您的位置:首页 > Web前端 > JavaScript

js 运算符 || && 妙用

2010-01-12 16:26 561 查看
首先出个题:

假设对成长速度显示规定如下:

成长速度为5显示1个箭头;

成长速度为10显示2个箭头;

成长速度为12显示3个箭头;

成长速度为15显示4个箭头;

其他都显示都显示0各箭头。

用代码怎么实现?

差一点的if,else:

代码

null==undefined : true
null=="" : false
null==0 : false
0=="" : true
false==0 : true
false=="" : true
true==0 : false
true==1 : true
true==-1 : false
false==null : false
'': undefined
false==undefined : false
-0===+0 : true
-0==+0 : true
-(-0)===0 : true
false===(!true) : true
typeof(null) : object
typeof(false) : boolean
typeof(undefined) : undefined
typeof(1) : number
typeof(+1.1) : number

给大家留下一个问题:3||6&&9的运算结果是什么? 具体的分析可以看这里:&&和||运算 内容如下: 一直以为 && 和 || 这两个运算符只能在判断表达式时使用,一般就是常在if语句使用。前段时间在公司的磨刀行动的考核题目中,完全做错了。由于对这两个运算符不是很理解,只是简单的认为是一个判断表达式。当时考试的题目:3||6&&9的运算结果是什么?我居然写的是true! 今天在博客园里看到了对这两个讲解,认为很多人在这里还是存在误区的。所以也把他记了下来。 我们先不看答案,先来对&& 和 || 的理解。我记得在以前的计算机书上看到过这两个运算符,他们的优先级是:&&大于|| 。那&&又是怎么运算的呢? exp1&&exp2:如果执行exp1后返回true,则执行exp2并返回exp2的值;如果执行exp1后返回false,则整个表达式返回exp1的值,exp2不执行; exp1 || exp2:如果执行exp1后返回true,则整个表达式返回exp1的值,exp2不执行;如果执行exp1后返回false,则执行exp2并返回exp2的值; 那下面我们来看答案吧: 3||6&&9:先运算&&,由于6和9都大于0,即都为true,所以结果为 9。表达式变为3||9。由于3和9 都为true,则返回3。所以答案就是3。 由上面我又延伸几个问题:false==0,true==0,false==null,false==undefined,false==""他们的值 又是什么呢? 在末尾我在给大家留个问题:&和&& 他们之间又有什么区别呢?

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: