我被给予了这个字符串:
var myMessage = "Learning is fun!"
这是我尝试创建仅包含字母的数组(不包括空格和“!”)的方式。
var myMessage = "Learning is fun!";
var arr1 = myMessage.split("");
function onlyLetters(array){
let arr2 = []
for(let i = 0; i < array.length; i++){
if(array[i] === "a" || "b" || "c" || "d" || "e"
|| "f" || "g" || "h" || "i" || "j" || "k" || "l"
|| "m" || "n" || "o" || "p" || "q" || "r" || "s"
|| "t" || "u" || "v" || "w" || "x" || "y" || "z"){
arr2.push(array[i])
}
}
return arr2
}
console.log(onlyLetters(myMessage))
我做错了什么?另外,是否有一种缩写方式可以列出字母“a”到“z”?
array[i] === "a" || "b" || ....
,因为===
右侧的表达式会被解析成"a" || "b" || ....
。你应该这样写array[i] === "a" || array[i] === "b" || ...
。 - ninesalt