我正在尝试编写一个将每个辅音加倍的函数translate()
。例如,translate(“this is fun”)应该返回字符串“tthhiss iss ffunn”。
下面的代码工作正常,直到我尝试添加数组/秒for
循环。运行时,它现在在第二个for循环中返回<
的语法错误?这显然不是问题,但经过几次尝试,我仍然不知道问题究竟在哪里?
我出错的任何想法?提前谢谢。
var vowel = ['a','e','i','o','u'];
function translate(text) {
var newText = '';
var isVowel = false;
for (var i = 0; i < text.length; i++) {
isVowel = false;
for (var x = 0; < vowel.length; x++) {
if (text[i] == vowel[x])
{
isVowel = true;
}
}
if (isVowel != true) {
newText = newText + text[i] + text[i];
} else {
newText = newText + text[i];
}
}
return newText;
}
console.log(translate('cat sat on the mat'));
答案 0 :(得分:0)
语法错误,因为您忘记了x
。
更改
for (var x = 0; < vowel.length; x++) {
到
for (var x = 0; x < vowel.length; x++) {
答案 1 :(得分:0)
你错过了第二个forloop中的x
你是这样的:
for (var x = 0; < vowel.length; x++)
像这样:
for (var x = 0; x < vowel.length; x++)