美文网首页
判断对象内容是否一样(不是同一个指针)

判断对象内容是否一样(不是同一个指针)

作者: 弹力盒 | 来源:发表于2021-07-05 22:28 被阅读0次

判断对象的内容是否一样,不判断两个对象是否为同一个指针

export function isObjectDiff(obj1, obj2) {
  var o1 = obj1 instanceof Object;
  var o2 = obj2 instanceof Object;
  // 判断是不是对象
  if (!o1 || !o2) {
    return obj1 === obj2;
  }

  // Object.keys() 返回一个由对象的自身可枚举属性(key值)组成的数组,
  if (Object.keys(obj1).length !== Object.keys(obj2).length) {
    return false;
  }

  for (var o in obj1) {
    var t1 = obj1[o] instanceof Object;
    var t2 = obj2[o] instanceof Object;
    if (t1 && t2) {
      return isObjectDiff(obj1[o], obj2[o]);
    } else if (obj1[o] !== obj2[o]) {
      return false;
    }
  }
  return true;
}

相关文章

  • 判断对象内容是否一样(不是同一个指针)

    判断对象的内容是否一样,不判断两个对象是否为同一个指针

  • 关于isEqual

    isEqual,用来判断两个对象是否相等。但是,与“==”判断指针地址是否相等,不同的是,它判断的是对象的内容方...

  • python当中用于条件的关键句

    in 判断对象是否在一个序列当中 not in is 判断是否是同一个对象 is not and or

  • Effective Objective-C 总结(第二天)

    对象等同性 “==”并非是判断对象等同性的正确途径,因为“==”比较的是指针是否相等,而不是对象。 NSObjec...

  • php一些常用参数

    一、指针 1、feof 判断指针是否末尾或出错-----返回true 一般用在判断指针没有到末尾时,输出内容...

  • 面试题

    1.如何判断两对象相等? isEqual:先判断指针两个对象的指针是否相同,若相同则为同一对象,若不同,比较cla...

  • java—对象的比较

    如果要判断2个对象是否相等,就要对该对象的属性内容进行比较,如果属性内容相同,则说明是同一个对象,标准方法如下: 记住:

  • shell判断文件夹或文件是否存在

    1.具体每个选项对应的判断内容 -e 判断对象是否存在 -d 判断对象是否存在,并且为目录 -f 判断对象是否存在...

  • Python is 与 == 的区别

    打印结果 is是用于判断 a b 是否指向同一个对象==是用于判断 a b 的值是否相等

  • iOS 快看漫画面试整理

    1, 如何判断两个对象相等 先判断是否为nil,然后比较对象的地址(用==),然后判断两个对象是否是同一个类(用i...

网友评论

      本文标题:判断对象内容是否一样(不是同一个指针)

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