我无法理解 javascript 如何处理对象相等性。
请有人能给我解释一下下面的输出吗?
1. var x = 3;
2. var y = 3;
3. var obj1 = {};
4. var obj2 = {};
5. var obj3 = obj1;
6. x == y
7. x === y
8. obj1 == obj2
9. obj1 === obj2
10. obj1 == obj3
11. obj1 === obj3
Output:
true
true
false
false
true
true
当您使用以下任一方法比较对象时==
or ===
,只有当对象是同一个物体,不仅仅是构造相同的对象,而且是完全相同的对象。
如果您想比较对象是否具有相同的构造,您可能需要查看 LoDash 之类的东西:https://lodash.com/docs/4.17.5 https://lodash.com/docs/4.17.5
这里特别相关的是_.isEqual()
功能:https://lodash.com/docs/4.17.5#isEqual https://lodash.com/docs/4.17.5#isEqual
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)