Script短路运算

Var a=true;
Var b1=new Boolean(false);
Console.log(a&&b1);返回b1
Console.log(a&&b1);返回true
两个结果不一样!这是为什么

阅读 3k
4 个回答

clipboard.png

我不知道你那个是怎么返回两次不同结果的,你应该给个截图。

另外,new Boolean返回一个对象,如果是if(b1)会执行true的情况,但是b1 == false返回true;

clipboard.png

不使用new操作符,直接使用Boolean的情况又不一样,它返回的或者说你能拿到的就是一个布尔值

clipboard.png

由于经常容易搞错,所以不推荐使用包装对象Boolean

clipboard.png
是一样的啊

新手上路,请多包涵

clipboard.png

逻辑与 (&&)
expr1 && expr2
如果expr1 能转换成false则返回expr1,否则返回expr2.
因此, 在Boolean环境中使用时, 两个操作结果都为true时返回true,否则返回false.

好好理解逻辑与的运算

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题