使用JavaScript怎么对两个对象字段相同度进行判断

  介绍

这篇文章将为大家详细讲解有关使用JavaScript怎么对两个对象字段相同度进行判断,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

<强>代码:

/* *   *,判断此对象是否是对象类型   *,@param {对象},obj    */function  isObject (obj) {   return  Object.prototype.toString.call (obj)===& # 39; [object 对象]& # 39;;   };/* *   *,判断此类型是否是数组类型   *,@param 数组{},arr    */function  isArray (arr) {   return  Object.prototype.toString.call (arr)===& # 39; [object 数组]& # 39;;   };/* *   *,深度比较两个对象是否相同   *,@param {对象},oldData    *,@param {对象},newData    */function  equalsObj (oldData newData) {//,类型为基本类型时,如果相同,则返回现实   如果(oldData=https://www.yisu.com/zixun/==newData)返回true;   如果(isObject oldData &&isObject (newData) &&Object.keys (oldData)。长度===种(newData) . length) {//类型为对象并且元素个数相同//遍历所有对象中所有属性,判断元素是否相同   (const关键oldData) {   如果(oldData.hasOwnProperty(关键)){   如果(! equalsObj (oldData(关键),newData[主要]))//对象中具有不相同属性返回错误的   返回错误;   }   }   }else if (isArray (oldData) &&isArray (oldData) &&oldData.length===newData.length) {//类型为数组并且数组长度相同   (让我=0,长度=oldData.length;我<长度;我+ +){   如果(! equalsObj (oldData[我],newData[我]))//如果数组元素中具有不相同元素,返回错误的   返回错误;   }   其他}{//其它类型,均返回错误的   返回错误;   }//走到这里,说明数组或者对象中所有元素都相同,返回现实   返回true;   };

<>强测试:

var  oldArr =, (1、2、   (   {   名称:“张三“,   年龄:11岁   }   ),   {   名称:& # 39;李四& # 39;,   年龄:21岁   em:(   {   地址:& # 39;邯郸& # 39;,   电话:& # 39;123 & # 39;   },   {   地址:& # 39;北京& # 39;,   电话:234   }   ]   }   ];   var  newArr =, (1、2、   (   {   名称:“张三“,   年龄:11   }   ),   {   名称:& # 39;李四& # 39;,   年龄:21岁   em:(   {   地址:& # 39;邯郸& # 39;,   电话:& # 39;123 & # 39;   },   {   地址:& # 39;北京& # 39;,   电话:234   }   ]   }   ];   console.log (equalsObj (oldArr newArr));

关于使用JavaScript怎么对两个对象字段相同度进行判断就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看的到。

使用JavaScript怎么对两个对象字段相同度进行判断