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