我試圖讓我的函數返回某些響應,具體取決於輸入有多少元音。但是,它似乎將整個單詞複製到新數組中。Javascript:if/for循環發出
Expected: die Jürgen, instead got: der Jürgen
有誰能告訴我我在哪搞亂了嗎?
function derDieDas(wort){
var vowels = ['a', 'e', 'i', 'o', 'u', 'ä', 'ö', 'ü'];
var newArray = [];
for(var i in wort) {
for(var j in vowels) {
if(i === j) {
newArray[newArray.length] = i;
};
};
};
if(newArray.length < 2) {
return 'das ' + wort;
} else if(newArray.length < 4) {
return 'die ' + wort;
} else {
return 'der ' + wort;
}
};
你爲什麼_guessing_什麼循環做數組的元素?在循環之後放置'console.log(newArray);'並查看瀏覽器控制檯中的結果(按F12)。它應該是'if(wort [i] ===元音[j]){newArray [newArray.length] = wort [i]; '在循環內部。 – Xufox
您正在比較指數,而不是數值。 –
在JS中,您可以使用大量的Array方法在您的服務中。 – Redu