var person={name:"wang"};
var people=[{name:"wang"}];
var morepeople=[person];
console.log(morepeople==people) //false
为什么people和morepeople的值不想等
var person={name:"wang"};
var people=[{name:"wang"}];
var morepeople=[person];
console.log(morepeople==people) //false
为什么people和morepeople的值不想等
因为JavaScript里面Array是对象,==或===操作符只能比较两个对象是否是同一个实例,也就是是否是同一个对象引用。目前JavaScript没有内置的
操作符判断对象的内容是否相同。
在网上流传很普遍的一种做法是将数组转换成字符串:
JSON.stringify(a1) == JSON.stringify(a2) 或 a1.toString() == a2.toString();但是不推荐这么操作呢,因为字符串“1”和数字1转化为String之后,
比较仍然会相等哦。