首页 > 其他 > 详细

Boolean的逻辑非,逻辑与,逻辑或

时间:2020-07-25 21:55:40      阅读:85      评论:0      收藏:0      [点我收藏+]

1.逻辑非

如果操作数是一个对象,返回false;

alert(!{a:1})//false

如果操作数是一个空字符串,返回true;

alert(!"")//true

如果操作数是一个非空字符串,返回false;

alert(!"fafa")//false

如果操作数是数值0,返回true;

alert(!0);//true

如果操作数是任意非0数值(包括infinity),返回false;

alert(!Infinity);//false

如果操作数是null,返回true;

alert(!null)//true

如果操作数是NaN,返回true;

alert(!NaN)//true

如果操作数是undefined,返回true;

alert(!undefined)//true

2.逻辑与

如果第一个操作数是对象,则返回第二个操作数

alert({}&&true)//true
alert({}&&false)//false

如果第二个操作数是对象,则只有在第一个操作数的求值结果为true的情况下才会返回该对象

alert(true&&{a:1})//[object Object]
alert(false&&{a:1})//false

如果两个操作数都是对象,则返回第二个操作数

console.log({a:1}&&{b:1});//{b: 1}

如果第一个操作数是null,则返回null

alert(null&&false)//null
alert(null&&true)//null

如果第一个操作数是NaN,则返回NaN

alert(NaN&&false)//NaN
alert(NaN&&true)//NaN

如果第一个操作数是undefined,则返回undefined

alert(undefined&&false)//undefined
alert(undefined&&true)//undefined

3.逻辑或

如果第一个操作数是对象,则返回第一个操作数

alert({a:1}||true);//[object Object]
alert({a:1}||false);//[object Object]

如果第一个操作数的求值为false,则返回第二个操作数

alert(false||true);//true

如果两个操作数是对象,则返回第一个操作数

console.log({a:1}||{b:1})//{a: 1}

如果两个操作数是null,则返回null

alert(null || null);//null

如果两个操作数是NaN,则返回NaN

alert(NaN || NaN);//NaN

如果两个操作数是undefined,则返回undefined

alert(undefined || undefined);//undefined

 

Boolean的逻辑非,逻辑与,逻辑或

原文:https://www.cnblogs.com/MySweetheart/p/13377139.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!