我正在尝试获取用户输入的单词,对照数组中的所有单词进行检查,然后删除数组中包含任何相同字母的单词,其中包含以下内容:
var words = [
// words go here
]
for (let a = 0; a <= inputWord.length; a++) {
for (let b = 0; b <= words.length; b++) {
if (!words[b].includes(inputWord[a])) {
words.splice(b, 1);
}
}
}
浏览器控制台给我“类型错误:无法读取未定义的属性‘包含’。” 在测试时,我可以input[A]
很好地打印出来,并且可以很好地打印出words[
我选择的随机数]
,但是当我尝试打印时,words[b]
它会出现未定义的情况。
问题
我无法弄清楚为什么words[b]
未定义。
数组索引从 0 开始。从 0 开始运行循环 - arr.length-1。words[words.length] 处的元素未定义。
let words = [
// words go here
]
for (let a = 0; a < inputWord.length; a++) {
for (let b = 0; b < words.length; b++) {
if (!words[b].includes(inputWord[a])) {
words.splice(b, 1);
}
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句