js中逻辑或与运算符优先级

逻辑或 ||

在js中,遇到一些问题,在此总结总结。
对于逻辑或||的运算,除了"有真则真,都为假则为假",还需要注意的地方在哪里呢?

先看一下实例吧。

alert( 'a' ||  '1');   // a
alert( undefined || null); // null
alert( undefined || undefined );  // undefined
alert( null || undefined );  //null

结果为什么会是这样?

首先对于逻辑或的运算,第一个值为false,才会走第二个,结果的值也为 第二个。
第一个值为true,不走第二个,结果值为 第一个。

JavaScript运算符优先级

  • 含义:
    运算符优先级描述了在计算表达式时执行运算的顺序。
    先执行具有较高优先级的运算,然后执行较低优先级的运算。
    例如,先执行相乘,再执行相加。

  • JavaScript 运算符的优先级

运算符 说明
.
[ ]
( )
字段访问、数组索引、函数调用和表达式分组
++
--
-
~
!
delete
new
typeof
void
一元运算符、
返回数据类型、
对象创建、
未定义的值
* / % 相乘、相除、求余数
+ - + 相加、相减、字符串串联
<<
>>
>>>
移位
<
<=
>
>=
instanceof
小于、小于或等于、大于、大于或等于、是否为特定类的实例
==
!=
===
!==
相等、不相等、全等,不全等
& 按位“与”
^ 按位“异或”
按位“或”
&& 逻辑“与”
逻辑“或”
?: 条件运算
= , OP= 赋值、赋值运算(如 += 和 &=)
, 多个计算

note:

  • || 与 ? : 的优先级, || 的优先级大于? :
    2 || 3 > 4 ? 0 : 1 --- 0
  • alert(1>3 ? 2 : 5 > 2 ? 9 : 1); ---- 9

PS: 若你觉得可以、还行、过得去、甚至不太差的话,可以“关注”一下,就此谢过!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容