换行符为console.log()而不是chrome浏览器

在每次迭代之后,我将数组中的一串string连同一个新的行string起来:

booksList = booksList + library.shelves[i].books[j].name + ", " + library.shelves[i].books[j].author + '\n'; 

当我console.log()chrome它的作品,但是当我使用jquery来设置一个div的文本它不。 我在一个Windows comp。 有任何想法吗?

我正在使用jquery将booksList设置为一个div的文本:

 $('#libraryDisplay').text(booksList); 

您应该使用<br>在HTML中换行。 在HTML中使用空格和新行来格式化代码,并使其具有人类可读性,并且对于标记本身并没有多大的作用。

而且你还应该使用jquery的html()函数将html插入到页面中,因为text()以某种方式像htmlspecialchars一样操作,替换所有使用文本变体创建html标记的符号。

 booksList = booksList + library.shelves[i].books[j].name + ", " + library.shelves[i].books[j].author + '<br>'; $('#libraryDisplay').html(booksList); 

你可以把样式放在这个div上:

 $('#libraryDisplay').css('white-space', 'pre-wrap'); 

当然<br>也可以像之前回答的那样工作:

尝试使用

 <br> 

而不是\ n。