JS中比较两个对象数组是否相等方法实例

  

<强>一、问题

  

在js中是不能直接用“==被蛘?==="来计算两个数组是否相等的,那么就需要对数组的值进行比较,

  

<强>二次,解决方案

  

对于比较两个数组次要的方法有如下几种,为什么说是次要解决方案呢?因为它不能真正称之为对两个数组的对比。

  

1。把两个数组转化为字符串的形式比较,如下:

  

。当两个数组元素类型相同,顺序相同时,直接判断是否相等,结果不相等;转化为字符串后,结果相等;

        var=[1、2、3、4);   var b=a.slice ();   console.log(一个);   console.log (b);控制台。日志(a==b);==JSON.stringify console.log (JSON.stringify (a) (b));      

,

  

运行结果:

  

 JS中比较两个对象数组是否相等方法实例

  

2。当两个数组元素类型不同,顺序相同时,用toString()转化为字符串,结果相等;函数用把转化为字符串,结果不相等;

        var=[1、2、3、4);   var b=[1, 2, 3, 4);   console.log(一个);   console.log (b);console.log (a.toString ()==b.toString ());==JSON.stringify console.log (JSON.stringify (a) (b));   之前      ,   

运行结果如下:

  

 JS中比较两个对象数组是否相等方法实例

  

3。当两个数组不相同时,先排序,再转化为Json字符串比较,结果相等:

        var=[1、2、3、4);   var b=[4、2、3、1];   console.log(类似());   console.log (b.sort ());   console.log (JSON.stringify(类似())==JSON.stringify (b.sort ())),      

  

运行结果:

  

 JS中比较两个对象数组是否相等方法实例

  

4。当数组包含对象时,先排序,再进行比较,结果相等:

        var=[{“x”:“abc”}, 2, 3, 4);   var b=[4、2、3, {“x”:“abc”});   console.log(类似());   console.log (b.sort ());console.log (JSON.stringify(类似())==JSON.stringify (b.sort ())),      

  

运行结果:

  

 JS中比较两个对象数组是否相等方法实例

  

从以上可以看出:

  

1。如果两个数组元素类型相同,顺序相同时,函数用把转化为字符串后进行比较,

  

2只如果两个数组元素类型相同,顺序不相同时,排序后,函数用把转化为字符串再进行比较,

  

3。两个数组元素类型不同时,函数用把转化为字符串后进行比较,数组不相等;用toString()转化为字符串后进行比较,数组相等;

  

以上就是本次介绍的全部相关知识点,内容还需要待补充,后期小编会完善相关内容,跟多内容可以在下方的相关文章学习。

JS中比较两个对象数组是否相等方法实例