【发布时间】:2017-04-12 18:11:08
【问题描述】:
我正在尝试编写一个名为 isVowel 的函数,该函数接受一个字符(即长度为 1 的字符串),如果它是元音、大写或小写,则返回“true”。如果字符不是元音,函数应该返回“false”。
这似乎应该有效,但无论我输入什么字母,它都会返回“true”。我尝试了很多不同的方法,但都碰壁了。
function isVowel(x){
if (x === "a" || "A" || "e" || "E" || "i" || "I"|| "o" || "O" || "u" || "U" || "y" || "Y"){
//console.log(x); // returns c
return true
} else {
return false
}
};
console.log(isVowel("c"));
【问题讨论】:
-
x === "a" || x === "A" || .... -
我确定你需要 x === 在所有可能性上。如有错误请指正。
-
==运算符将在进行任何必要的类型转换后比较是否相等。===运算符不会进行转换,因此如果两个值不同类型 === 将简单地返回false。两者都同样快。只要操作数的类型和值严格相同,就养成使用===比较运算符的习惯。它将避免不必要的幕后问题。
标签: javascript function