我希望我的程序检查数组中的任何两个连续单词是否相同。我相信我的“if”语句是正确的,但是console.log显示所有连续的单词都匹配。我在这里想念什么?
任何帮助表示赞赏!我是这个东西的新手:)
var wordArray = ["blue", "green", "yellow", "red", "red", "blue", "blue", "yellow"]
for (i=0; i<wordArray.length - 1; i++) {
if (i === i+1); {
console.log("We have a match!");
} //Why is this loop saying that all items in the array are equal?
}
最佳答案
试试这个。您在错误的if语句旁边检查索引而不是数组的元素。
for (i = 0; i < wordArray.length - 1; i++) {
if (wordArray[i] === wordArray[i + 1]) {
console.log("We have a match!");
}
}
如果数组只有一个元素长,则只是更好地进行长度处理的提示:
for (i = 1; i < wordArray.length; i++) {
if (wordArray[i - 1] === wordArray[i]) {
console.log("We have a match!");
}
}