为什么writeln(); 不生产新生产线?

Ali*_*Ali 3 javascript logic

  <script type='text/javascript'> 
  //<![CDATA[
   for(var j = 0; j < 6;) {
    document.writeln(++j);
   }
  //]]>
  </script>
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,如果引用了该定义,它假设给出一个新行 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
Run Code Online (Sandbox Code Playgroud)

但是如果我们希望它将它显示到页面上,我们就必须添加<br\>标签,这样它就会生成一个标签,break-line这样我们就可以得到我们想要的相同输出.

  <script type='text/javascript'> 
  //<![CDATA[
   for(var j = 0; j < 6;) {
    document.writeln(++j);
    document.writeln("<br>");
   }
  //]]>
  </script>
Run Code Online (Sandbox Code Playgroud)

Art*_*rth 5

想想以下HTML如何

<p>
1
2
3
4
</p>
Run Code Online (Sandbox Code Playgroud)

将显示在浏览器中.


Mat*_*all 5

在大多数情况下,浏览器不会显示'\n'为换行符.

这可以使用CSS<pre>标签进行更改 ; 否则,使用<br/>(不是很大)或块级元素(<div>,<p>等),以在文本中介绍断裂.