我正在努力使这个猪拉丁语功能,但遇到了这个奇怪的问题。当我检查第一个字符是否在元音数组中时,它不是,if语句返回它是!
所以我检查了我的病情是否有问题,但它明显返回-1。
如果这不是-1,则返回字母的索引是我要求的,并返回-1。完全没有意义。
function translatePigLatin(str) {
vowels = ['a','e','i','o','u'];
if (vowels.indexOf(str.charAt(0) != -1)){
return vowels.indexOf(str.charAt(0));
} else {
return false;
}
}
translatePigLatin("consonant");
任何人都能解释一下吗?
答案 0 :(得分:2)
在if语句中,您正在检查indexOf您的条件。您只想检查indexOf(str.charAt(0))。因此,将该行重写为:
if (vowels.indexOf(str.charAt(0)) != -1){