逻辑与,如果null&&NaN&&undefined同时出现
来源:6-1 逻辑与
夜魇丶
2019-06-10 21:39:24
老师你好,我举个例子:
var x=undefined,
y=null,
z="abc22"+11;
x&&y //null
x&&z //undefined
y&&z //null
x&&y&&z //null
(代码不规范,就是三种操作数同时比较的时候)
我试完之后的结论是,null与NaN及undefined三者同时进行与操作符运算时,优先返回null值,其次undefined,最后NaN。想知道这样是不是对的。
1回答
你好,这样理解是有问题的,要按照操作数的顺序来判断:
例如x&&y:
x的值是undefined,会先进行隐式转换成布尔值,undefined转化为布尔值为false:
逻辑与是只要有一个false,就会停止,返回当前值,那么x&&y的结果就是undefined,不是同学注释的null哦。
自己可以再测试下,如果还有疑惑,可以查看教辅资料中的讲解:
祝学习愉快!
相似问题