87,907
社区成员
发帖
与我相关
我的任务
分享
var a={a:1};
var b={a:1};
console.log(a==b); // false
b.a=2;
console.log(a,b); // {a: 1} {a: 2}
当是两个克隆体时,你砍掉其中一个人的手,另一个人的手是还在的。所以这两个克隆体是不相等的。
var a={a:1};
var b=a;
console.log(a==b); // true
b.a=2;
console.log(a,b); // {a: 2} {a: 2}
当我们共同的朋友张三的手被砍掉时,你的朋友张三的手没了,我的朋友张三的手也没了,所以这两个张三是真的相等的。var a={a:1}; var b={a:1}; console.log(a==b);
原因就在于你无法理解为什么上面的代码会输出false。
简单来说,就算是克隆出来的两个个体,也是不同的两个生命,是不会相等的。
只有当我们有共同的朋友张三,那么你的朋友张三才会等于我的朋友张三
var a={a:1}; var b=a; console.log(a==b);