[] == []为什么会是false?
js 中可以使用 == 和 === 运算符进行相等性判断,其中 == 运算符会进行隐式转换。
MOREDETAIL: https://sevody.github.io/2017...
楼主可以看看JAVA中的类似问题
String a = "hello world";
String b = "hello world";
String c = new String("hello world");
string d = new String("hello world");
print(a==b); //true
print(a.eqauls(b)); //true
print(c==d); //false
print(a.eqauls(b)); //true
10 回答10.3k 阅读
4 回答8.6k 阅读✓ 已解决
7 回答10.7k 阅读
2 回答11.3k 阅读✓ 已解决
6 回答2.5k 阅读
5 回答4.2k 阅读✓ 已解决
4 回答2.5k 阅读✓ 已解决
在js中,数组为引用类型,通过==或者===来比较两个数组是否相同,其实是比较两个数组的内存地址是否相同。
[] == []
为false,是因为左、右两边的'[]'都不是同一个数组对象,其内存地址不一样。如果要判断两个数组中的元素内容是否相同,可以通过将数组转换成字符串再做比较