! [ ] == ! [ ] 和 ! [ ] == [ ] 结果是什么? 为什么?

简介: ! [ ] == ! [ ] 和 ! [ ] == [ ] 结果是什么? 为什么?

结果两个 都是true


1. ![] == ![]  


首先是!的优先级要比 == 高         所以 先执行两边的 ![] 然后单个的[]是true 加上!取反 也就是false了

  然后 第一个 ![] == ![] 也就是等于 false == false 最后返回的是true  


2. ![] == []


然后后边的![] == [] 也是因为!优先级高 所以先把左边的变成false == []

然后又因为 两个值相比较 如果有一方的值是布尔值的话 就会把另一方转成数值

然后 [] 转成数值的话 就是 0  然后因为0 = false 所以最后 也是false == false  最后也返回一个true

相关文章
|
8月前
|
JavaScript 前端开发 安全
== 和 ===什么区别呀?
== 和 ===什么区别呀?
133 0
|
JavaScript 前端开发
== 和 ===区别,分别在什么情况使用
== 和 ===区别,分别在什么情况使用
85 1
|
Java
==和equals()
==和equals()
95 0
|
存储
什么时候 a == 1 && a == 2 && a == 3 为 true?
什么时候 a == 1 && a == 2 && a == 3 为 true?
141 0
什么时候 a == 1 && a == 2 && a == 3 为 true?
a==b,b==c都为true,那a==c一定为true吗???
a==b,b==c都为true,那a==c一定为true吗???
a==b,b==c都为true,那a==c一定为true吗???
|
JavaScript
js 如何if( a== 1 && a == 2 && a==3)
js 如何if( a== 1 && a == 2 && a==3)
154 0
|
存储 Java
今天我们来解决0.1d+0.2d==0.3d是false的问题!
今天我们来解决0.1d+0.2d==0.3d是false的问题!
今天我们来解决0.1d+0.2d==0.3d是false的问题!
经典面试题a == 1 && a== 2 && a== 3
经典面试题a == 1 && a== 2 && a== 3
74 0

热门文章

最新文章