深度比较
Posted chenlw
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了深度比较相关的知识,希望对你有一定的参考价值。
let obj1 = { a:111, b:"hahah", c:{ name:"qaz", age:45 }, d:[1,2,3,4] } let obj2 = { a: 111, b: "hahah", c: { name: "qaz", age: 45 }, d: [1, 2, 3, 5] } let obj3 = 1111; let obj4 = 1111; console.log(obj1===obj2)//false console.log(objSame(obj1, obj2))//true function objType(obj){ return typeof obj !=‘object‘ && obj !=null ? true: false; } function objSame(obj1, obj2){ if (objType(obj1) || objType(obj2)){ return obj1 === obj2; } if (obj1 === obj2){ return true; } let key1 = Object.keys(obj1); let key2 = Object.keys(obj2); if (key1.length != key2.length){ return false; } for (let i in obj1){ let res = objSame(obj1[i], obj2[i]) if (!res){ return false; } } return true; }
以上是关于深度比较的主要内容,如果未能解决你的问题,请参考以下文章