if (typeof obj1 == "object" && typeof obj2 == "object" && obj1 != null && obj2 != null)
{
deepEqual(obj1, obj2);
}
const deepEqual = function(obj1, obj2)
{
return obj1 === obj2;
}
let obj = {here: {is: "an"}, object: 2};
console.log(deepEqual(obj, obj));
// → true
console.log(deepEqual(obj, {here: 1, object: 2}));
// → false
console.log(deepEqual(obj, {here: {is: "an"}, object: 2}));
// → true 这里我的代码输出结果是false,请问这是为什么,跟===比较有关么
js object两两比较,为什么不对
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
4条回答 默认 最新
古德赫赫 2019-10-16 15:10关注引用和匿名对象的对比,本来就指向的不是同一个对象,尽管内容相同,就算用==也是false;
一般用字符串或者数字可以用这种方式比较是否相同,对象不行本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报