export function isObjectValueEqual(a, b) {
//取对象a和b的属性名 ,第一个值为你需要上传的值,第二个值为旧数据
//遍历筛选出名称和值,然后返回数据
var aProps = Object.getOwnPropertyNames(a).map(function(
val,
idx,
array
) {
if (val == "__ob__") {
return [];
} else {
var c = [val, a[val]];
return c;
}
});
var bProps = Object.getOwnPropertyNames(b).map(function(
val,
idx,
array
) {
if (val == "__ob__") {
return [];
} else {
var c = [val, b[val]];
return c;
}
});
aProps.forEach((item, index) => {
console.log(item);
if (item == "") {
aProps.splice(index, 1);
}
});
bProps.forEach((item, index) => {
console.log(item);
if (item == "") {
bProps.splice(index, 1);
}
});
//对上面进行删除
// console.log(aProps);
// console.log(bProps);
// //判断属性名的length是否一致
// if (aProps.length != bProps.length) {
// return false;
// }
//循环取出属性名,再判断属性值是否一致
// console.log(aProps.length);
var list = {};
for (var i = 0; i < aProps.length; i++) {
// console.log(111);
// var propName = aProps[i];
// console.log(propName);
if (aProps[i][1] !== bProps[i][1]) {
// console.log(i);
// console.log(aProps[i]);
var d = aProps[i][0];
list[d] = aProps[i][1];
}
}
return list;
// return true;
};
放在独立js文件夹中,其他调用该函数即可