判断两个数组是否相等

[1,2,3].toString()== [3,2,1].toString()   ----false   转成字符串比较,但是发现他们只是顺序不相等也被当做不相等

我们可以先把数组排序按照从小到大的顺序sort()函数

[1,2,3].sort().toString()== [3,2,1].sort().toString()   ---true  这样的就是"1,2,3"=="1,2,3"结果是相等的

 

但是你如果你是用的定义好的两个变量

var  a=["1","2"];var  b=["2","1"];console.log(a==b)

结果是:false

a.toString()==b.toString();
结果是:false

a.sort().toString()==b.sort().toString();
结果是:true

但是你再输出a。b看看

a
 ["1", "2"]
b
 ["1", "2"]

实际上使用sort是改变了原来的数组的

 

】第二个方法:

// 先判断长度,再遍历比较.every必须每个值都相等才能返回true
function arrayCompare(arr1, arr2) {
    return arr1.length == arr2.length && arr1.every((item, index) => item.op == arr2[index].op)
}

//调用上面的函数进行比较
result = arrayCompare(arrone, arrtwo)
console.log(result)
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值