我正在尝试编写一个名为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"));

最佳答案

为了进一步简化代码,您可以创建一个有效值数组,然后简单地检查传入的值是否包含在有效值列表中。



function isVowel(x) {
  var vowels = ["a", "e", "i", "o", "u", "y"];
  return vowels.indexOf(x.toLowerCase()) > -1;
};
console.log(isVowel("a"));

09-30 17:18