用于在Javascript中在同一行上循环打印字符

时间:2015-01-09 16:08:02

标签: javascript loops for-loop

我在这里有这个代码,当我调试它时,它打印出多行上的字符,但我希望它们在同一行上,以便重新组合输入的单词。例如,当我调试输入单词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);

}

1 个答案:

答案 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');

可能有更好的方法来编写最后一个版本,但上面的内容很快且不言自明。