【发布时间】:2021-09-03 10:24:45
【问题描述】:
我想在包含某些字符的数组中查找单词。但是,如果我尝试使用 for 循环找到它们,它只会迭代一次。它应该给我下面数组中的第一项和最后一项。
arr = ["knighthood", "parental", "fridge", "clingfilm"]
function longest7SegmentWord(arr) {
newarr = []
for (i = 0; i < arr.length; i++) {
set = new Set(arr[i].split(""))
if (set.has("k" || "m" || "v" || "w" || "x") == true) {
newarr.push(arr[i])
}
}
return newarr
}
let result = longest7SegmentWord(arr)
console.log(result)
但代码只返回一个包含一个元素的数组。["knighthood"]
【问题讨论】:
-
你还没有理解
has中的条件。 -
您的函数名称也暗示了一个完全不同的目的,它与您面临的问题完全不符
-
另外,声明你的变量。
-
如果您使用调试器单步执行代码,您会看到 for 循环变量
i肯定递增。
标签: javascript arrays if-statement set