用Javascript比较两个数组并返回布尔值

时间:2017-02-09 05:34:44

标签: javascript arrays

我正在尝试确定两个数组(下面的代码中的a和b)是否相同。

我编写了下面的代码,但for循环在为任何数组元素返回'true'值后中断。

 function arraysEqual(a, b) {
     if (a === b) return true;
     for (var i = a.length; i--;) {
         if (a[i] !== b[i]) return false;
     }
     return true;
 }

我认为我需要运行every()函数,但我无法弄清楚如何定义函数以检查数组之间的身份。

提前谢谢。

2 个答案:

答案 0 :(得分:0)

您可以使用

function arraysEqual(a, b) {
if(a.length !== b.length)
    return false;
for(var i = a.length; i--;) {
    if(a[i] !== b[i])
        return false;
}

return true;

}

a.toString() == b.toString()

答案 1 :(得分:0)

尝试此功能,

function arraysEqual(a, b) {
if (a === b) return true;
for (var i = a.length-1; i>=0;i--) {

if (a[i] !== b[i]) return false;
}
return true;
}