Javascript 中的逻辑运算符

Javascript 中的逻辑运算符和其他语言中的不一样,嗯,真的不一样。

逻辑非 !

逻辑非是反操作,把真变假,把假变真。

先介绍逻辑非是因为 Javascript 中的false和其他语言真不一样。

看到了吧,0、空字符串、nullundefinedNaNfalse在 Javascript 中都表示“非”,但是空数组[ ]和空对象{ }不是,记住这些“非”,下面还会用到。

所以,可以用!!将一个非布尔对象直接转成布尔对象。

逻辑或 ||

或运算只要运算符两边一个为真,则返回真。

逻辑或运算还有一个运算逻辑是当左面的值为“非”时,则返回右面的值,否则返回左面的值,不管右面是不是非。

这个运算符让我们可以合并“非”值,在编程时会经常经常用到,如return a || 1,正经写法是下面这样:

逻辑与 &&

或运算只要运算符两边都为真时,才返回真。

逻辑与运算还有一个逻辑是当左面的值不为非时返回右面的值,否则返回左面的值,不管右面是不是非。

这种运算用得比较少,但是用得好,会让代码更优雅,当然也更难读。虽然一般人都这么写。

谁也不会写成a && a + b,好像很难懂的样子。

空值合并运算符 ??

ES 11 (2020) 新增运算符,比逻辑或||功能少一些,当左面为nullundefined时,返回右面的值。

就这么多。

(本文完)


微信公众号
码农老吴  |  星源工作室  |  开发月志  |  问题反馈
联系我们:wu@qross.io     手机/微信:18618171102
京 ICP 备 20027445 号
$(h1)!