首页 > 解决方案 > 为什么 console.log 和 document.write 输出不同的结果?

问题描述

我有以下代码:

let size = 8;
let board = "";

for (let y = 0; y < size; y++) {
  for (let x = 0; x < size; x++) {
    if ((x + y) % 2 == 0) {
      board += " ";
    } else {
      board += "#";
    }    
  }
  board += "\n";
}

console.log(board);
document.write(board);
<h1 style="text-align: center; color: rebeccapurple;">Chess Board</h1>

console.log输出:

在此处输入图像描述

document.write输出:

# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

为什么他们输出不同的结果?

标签: javascriptconsole.logdocument.write

解决方案


文档解释 html。" " 和 "\n" 不是 HTML 代码。您应该使用"&nbsp;"and"<br/>"而不是 " " 和 "\n"

for (let y = 0; y < size; y++) {
  for (let x = 0; x < size; x++) {
    if ((x + y) % 2 == 0) {
      board += "&nbsp;";
    } else {
      board += "#";
    }    
  }
  board += "<br/>";
}

推荐阅读