美文网首页
js中的逻辑与(&&)和逻辑或(||)

js中的逻辑与(&&)和逻辑或(||)

作者: _达斯基 | 来源:发表于2018-02-17 00:20 被阅读0次
var a = 2;

var b = 3;

var andflag = a && b ;

var orflag = a || b;

问andflag 和orflag 分别是什么?

起初我认为: andflag 和orflag 的值都为 true; 毕竟 && 和 || 都是求Boolean ,后来发现,我错了。

答案应该是 andflag = 3,orflag = 2;

原因是这样的:

在运算过程中,首先js 会将 && 和|| 两边的值转成Boolean 类型,然后再算值 ,&&运算如果返回true,则取后面的值,如果|| 返回true,则取前面的值 , 而其中数值转换成boolean 的规则 是:

对象、非零整数、非空字符串返回true,

其它为false ;

a && b 的运算就是 :因为 a 和 b全是非零整数,所以 a 和 b 也就是true ,而 true && true 返回 true ,则取后面的b ,同理 a 和b 全是非零整数,a 和b 全是true ,则true || true 返回 true ,取|| 前面的值 也就是2;

相关文章

网友评论

      本文标题:js中的逻辑与(&&)和逻辑或(||)

      本文链接:https://www.haomeiwen.com/subject/rihmtftx.html