我在这里有这个代码,当我调试它时,它打印出多行上的字符,但我希望它们在同一行上,以便重新组合输入的单词。例如,当我调试输入单词hello时,它打印出来:
h
i
l
l
i
我怎么想打印这个:hilli
。任何的想法??感谢。
var say = prompt("name");
for ( var count = 0; count <= say.length; count++){
var letter = say.charAt(count);
if (letter == "a" || letter == "e" || letter == "o" || letter == "u"){
letter = "i";
}
console.log(letter);
}
答案 0 :(得分:3)
console.log
始终在每行调用上输出每个调用。
如果你想要一行,你必须将字符合并为一个新字符串,然后在循环后输出。
对于您的特定代码,您也可以使用正则表达式执行整个操作。
name = name.replace(/[aeou]/gi, 'i'); // 'g' for global, 'i' for case-insensitive
或区分大小写:
name = name.replace(/[aeou]/g, 'i').replace(/[AEOU]/g, 'I');
可能有更好的方法来编写最后一个版本,但上面的内容很快且不言自明。