无法在JavaScript中插入换行符



如何在JavaScript中插入换行符?以下代码在一行中显示所有内容,即使在for循环中使用换行符时也是如此

function isEven(number)
{
if (number % 2 == 0)
return 1;
else
return 0;
}
for (let i=0;i<=30;i++)
{
if (isEven(i) == 1)
{
document.write(i + " evenn");
}
else {
document.write(i + " oddn");
}
}

由于您使用的是document.write,因此应该使用<br>: The Line Break element:

function isEven(number)
{
if (number % 2 == 0)
return 1;
else
return 0;
}
for (let i=0;i<=30;i++)
{
if (isEven(i) == 1)
{
document.write(i + " even<br>");
}
else {
document.write(i + " odd<br>");
}
}

您可以尝试使用方法console.log();而不是document.write();

我会在不使用document.write的情况下完成这项工作-我会创建一个ul并构建一个包含所有li的字符串,并确定每个li是否为奇数;/即使然后将该字符串插入ul的innerHTM。这样做的好处是,您只在一次而不是每次迭代中更改DOM,并且使用li消除了换行的需要,因为li已经是块级元素了。

我还将简化奇数/偶数检查逻辑,以返回基于模数运算符的文本,该运算符将成为选项的索引。

function isEven(number) {
const options = ['odd', 'even'];
return options[number % 2];
}
let listStr = '';
for (let i=0;i<=30;i++) {
listStr += '<li>' + i + ' - '  + isEven(i) + '</li>';
}
document.querySelector('#results').innerHTML = listStr;
#results {
list-style: none;
}
<ul id="results"></ul>

使用document.write通常被认为是不好的做法——你根本不应该使用它。

在您的情况下,您可以创建一个html字符串,然后将其附加到文档主体(或您想要结果的任何位置(。

正如Mamum所说:您需要使用<br>标记,浏览器将其渲染为换行符。

我们使用Element.insertAdjacentHTML将html代码插入正文。

let html = "";
for (let i=0;i<=30;i++)
{
if (isEven(i) == 1)
{
html += i + " even<br>";
}
else {
html += i + "  odd<br>";
}
}
document.body.insertAdjacentHTML("beforeend", html);

相关内容

  • 没有找到相关文章

最新更新