!+1 //false
是什么原理
对于!+1
,其中的+
在此处作为一元正号(+)
,计算后面操作数的数值,会尝试将其转换成一个数值。如+1 => 1
, +'1' => 1
。逻辑非!
仅仅判断其后操作数是否为真值,假值有:null,undefined,false,NaN,0,-0,+0
。
一元加法的优先级为16,逻辑非的优先级也是16,但是他们的关联性是从右向左,所以此处+1为真值
,逻辑非!
后则为false
。
可参考 优先级汇总表
13 回答12.9k 阅读
7 回答2.1k 阅读
3 回答1.3k 阅读✓ 已解决
2 回答1.3k 阅读✓ 已解决
6 回答1.2k 阅读✓ 已解决
6 回答1.1k 阅读
2 回答1.3k 阅读✓ 已解决
+
和!
都是一元运算符,先+
得到1
然后!
得到false