我试图让我的函数返回某些响应,具体取决于输入有多少元音。但是,它似乎将整个单词复制到新数组中。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