比较两个数组对象

时间:2017-12-09 17:36:40

标签: javascript arrays

我正在尝试比较数组中的对象并查看它们是否相同

function alexareturn(alexaword, wordlist) {
  var rhyme = false
  console.log(alexaword + wordlist);
  for (var i = 0; i <= alexaword.length; i++) {
    for (var j = 0; j <= wordlist.length; j++) {
      if (alexaword[i].indexOf(wordlist[j]) > -1) {
        rhyme = true;
        break;
      }
    }
  }
  if (rhyme) {
    return true;
  } else {
    return false;
  }
}

我的控制台正在返回两个正确的数组,但是我收到错误无法读取indexOf(未定义)。如果我正在让控制台在之前返回一个正确的数组,那么它们中的一个怎么可能未定义?

我只想调用我的函数,如果两个数组匹配则返回true,感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

你的外部for循环从0开始 - alexaword.length(包括)。在最后一次迭代中,alexaword [i]将是未定义的。

for (var i = 0; i < alexaword.length; i++)会修复它。