<script type='text/javascript'>
//<![CDATA[
for(var j = 0; j < 6;) {
document.writeln(++j);
}
//]]>
</script>
在上面的代码中,如果引用The writeln() method is identical to the write() method, with the addition of writing a newline character after each statement.
但就我而言,输出为123456
更新:
我会找到最好的答案接受,但所有的答案都是正确的,我相信下次有人会有同样的问题,所以我想我应该更新顶部的答案并删除作业标签,这样这将使每个人受益。
没有产生新行的原因是因为它实际上产生'\ n'
浏览器的'\ n'如果我没有错,它不会影响如何显示到屏幕上,但如果你查看页面的源代码,你会看到我的输出会显示像这样的东西
1
2
3
4
5
6
但是如果我们希望它将其显示在页面上,我们就必须添加<br\>
标记,这样它才能生成break-line
,这样我们就可以得到我们想要的相同输出。
<script type='text/javascript'>
//<![CDATA[
for(var j = 0; j < 6;) {
document.writeln(++j);
document.writeln("<br>");
}
//]]>
</script>
答案 0 :(得分:5)
考虑以下HTML
<p>
1
2
3
4
</p>
将显示在浏览器中。
答案 1 :(得分:5)
在大多数情况下,浏览器不会将'\n'
显示为换行符。
这可以是changed with CSS或<pre>
tags;否则,使用<br/>
(不是很好)或块级元素(<div>
,<p>
等)来在文本中引入中断。
答案 2 :(得分:2)
\n
仅在代码来源或<pre></pre>
代码中可见。如果要在HTML文档中显示输出,则必须添加<br />
才能获得新行。
答案 3 :(得分:2)
不,它工作正常。这里的问题是你在不同的行输出它,但它不会在浏览器中以这种方式显示。
要查看实际结果,请使用“查看源代码”或在浏览器的开发者工具中查看HTML。
如果你想让它显示在不同的行上,请输入一些HTML,如下所示。
<script type='text/javascript'>
//<![CDATA[
for(var j = 0; j < 6;) {
document.write(++j);
document.writeln("<br>");
}
//]]>
</script>
或使用PRE
(又名预格式化)标记(see W3 spec info on PRE here),这将保留基础来源中的换行符。
答案 4 :(得分:1)
它正在写入新行,只有浏览器不会向您显示这些行,除非您明确指示它这样做。看看在输出周围添加预格式化标签的效果:
var i = 0;
document.write('<pre>');
while ( i < 5 ) document.writeln(++i);
document.write('</pre>');
验证此类输出的最佳方法是查看页面的来源,而不是页面本身。
答案 5 :(得分:1)
您需要使用<br/>
。浏览W3Schools教程here。
答案 6 :(得分:1)
如果您使用Firebug窥探源代码并将其复制到像Noteapd ++这样的内容中,您会发现它确实输出了换行符。它们不会显示在浏览器中,因为HTML中的换行符未定义为换行符。