美文网首页
js 对象和对象比较是否相等

js 对象和对象比较是否相等

作者: 宇少_e010 | 来源:发表于2020-08-04 17:20 被阅读0次
    /**
 * 比较两个 json 对象的 key 和 value 是否都相同
 * @param obj1
 * @param obj2
 * @returns {boolean} true => 相同 | false => 不相同
 */
var objl={
    id:'1',
    name:'zjamh',
    age:'18'
}
var objb={
  age:'18',
  name:'zjamh',
  id:'1',
}

 const compareJsonObj = (obj1, obj2) => {
  let result = true
  if (!isJsonObj(obj1) || !isJsonObj(obj2)) return false
  for (let key in obj1) {
    if ((obj1[key] && !obj2[key]) || (!obj1[key] && obj2[key]) || (obj1[key] && obj2[key] && (obj1[key]).toString() !== (obj2[key]).toString())) {
      result = false
      break;
    }
  }
  return result

  // 判断一个对象是否是 json 对象
  function isJsonObj(data) {
    return (data && Object.prototype.toString.call(data) === "[object Object]")
  }
}

console.log(compareJsonObj(objl,objb))

相关文章

网友评论

      本文标题:js 对象和对象比较是否相等

      本文链接:https://www.haomeiwen.com/subject/eviwrktx.html