首页 > 代码库 > 判断两个对象相等
判断两个对象相等
<script>
var a = {
name: ‘jk‘,
age: 12,
say: {
today: ‘hi‘,
yesterday: ‘no‘
},
arr: [1,2]
};
var b = {
name: ‘jk‘,
age: 12,
say: {
today: ‘hi‘,
yesterday: ‘no‘
},
arr: [1,2]
};
console.log(isObjectValueEqual(a, b));
function isObjectValueEqual(a, b) {
if (typeof a == ‘number‘ && typeof b == ‘number‘) {
return a == b
}
var aProps = Object.getOwnPropertyNames(a);
var bProps = Object.getOwnPropertyNames(b);
if (aProps.length != bProps.length) {
return false;
}
for (var i = 0; i < aProps.length; i++) {
var propName = aProps[i];
console.log(propName, Object.prototype.toString(a[propName]));
//if (Object.prototype.toString(a[propName]) == ‘[Object Object]‘ || Object.prototype.toString(b[propName]) == ‘[Object Object]‘) {
if ( typeof a[propName] === ‘object‘ || typeof b[propName] === ‘object‘ ){
console.log(a[propName], b[propName]);
isObjectValueEqual(a[propName], b[propName])
}else if (a[propName] !== b[propName]) {
return false;
}
}
return true;
}
</script>
判断两个对象相等
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。