【发布时间】:2018-08-25 14:42:18
【问题描述】:
我试图让我的 forEach 循环遍历 varfruit 并将找到的任何字符串推入 arr2。
这是我的代码:
var fruit = [1,2,3, "apple", "banana", "grape"]
function isString(fruit) {
var arr2 = []
fruit.forEach(function(element) {
if(element == "string"){
arr2.push(element)
}
return arr2
})
}
//期望的输出是 arr2 = "apple", "banana", "grape"
我不确定我在这里做错了什么。感谢您的建议。
【问题讨论】:
-
你需要使用类似
typeof(developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…) 来获取类型:if (typeof element === "string") -
试试
if(typeof element == "string"){。现在您正在检查1 == "string"、2 == "string"、3 == "string"、"banana" == "string"等等.. 这将是false。您基本上是想检查它们的类型,而不是值。 -
谢谢@ArupRakshit,这有助于我理解我做错了什么。
标签: javascript loops foreach push