javascript中的&&
2016-05-16 18:11
369 查看
&&在JavaScript中有三种理解:
1.当两个操作数都是布尔值的时候,&&对两个执行布尔与(AND)操作,只有在两个都是true时,才返回true。如果其中一个是false,它返回false。
x==0&&y==0 //只有在x和y都为0的时候,才返回true
2.&&可以对真值和假值进行布尔与(AND)操作。如果两个操作数都是真值,那么返回一个真值,否则,至少一个操作数是假值的话,则返回一个假值。(假值有:false、null、undefined、0、-0、NaN和"",所有其他的值包括所有对象都是真值)。
3.&&首先计算左侧的操作数。如果结果是假值,整个就是假值,这时返回左操作数的值。
左为真:计算右侧的操作数的值并将其返回作为整个表达式的计算结果:
var m={x:1};
var p=null;
o&&o.x //1:o是真值,因此返回值为o.x
p&&p.x //null:p是假值,因此将其返回,而不去计算p.x
&&的这种行为有时称做“短路”。
1.当两个操作数都是布尔值的时候,&&对两个执行布尔与(AND)操作,只有在两个都是true时,才返回true。如果其中一个是false,它返回false。
x==0&&y==0 //只有在x和y都为0的时候,才返回true
2.&&可以对真值和假值进行布尔与(AND)操作。如果两个操作数都是真值,那么返回一个真值,否则,至少一个操作数是假值的话,则返回一个假值。(假值有:false、null、undefined、0、-0、NaN和"",所有其他的值包括所有对象都是真值)。
3.&&首先计算左侧的操作数。如果结果是假值,整个就是假值,这时返回左操作数的值。
左为真:计算右侧的操作数的值并将其返回作为整个表达式的计算结果:
var m={x:1};
var p=null;
o&&o.x //1:o是真值,因此返回值为o.x
p&&p.x //null:p是假值,因此将其返回,而不去计算p.x
&&的这种行为有时称做“短路”。
相关文章推荐
- js实现图片预加载
- Fastjson
- javascript 终止函数执行
- 一个非常酷的Js计算器(加减乘除,浮点,以及括号运算,四则混合运算)
- javascript 判断某元素的id是否存在
- js闭包
- 解析Json文件
- js回调函数
- Javascript笔记
- Uncaught SyntaxError : Unexpected token ILLEGAL js传递带空格的参数
- js判断数据类型的几种方法及应用场景分析
- javascript实时监视 input value
- [javascript] Promise简单学习使用
- JavaScript Web 应用最佳实践分析
- JavaScript Web 应用最佳实践分析
- js实时监听input中值的变化
- JavaScript之图片滚动
- js正则匹配html内容
- js设置document.domain实现跨域的注意点
- JavaScript之图片轮换