JS中“!!”的用法

2017-12-14  本文已影响0人  yzr_0802
var o={flag:true};  
var m=!!o.flag;//等效于var test=o.flag||false;
var n=!!o.test;

console.log(m);//true
console.log(o.flag);//true

console.log(n);//false
console.log(o.test);//undefined

由于对null与undefined用!操作符时都会产生true的结果,
两个感叹号的作用:
如果明确设置了o中flag的值(非 null/undefined/0""/等值);自然m就会取跟o.flag一样的值;
如果o中没有test值;o.test的值是undefined;自然n会取false;而不是 null或undefined。

上一篇下一篇

猜你喜欢

热点阅读