首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在子字符串中新建一行(JavaScript)

问在子字符串中新建一行(JavaScript)
EN

Stack Overflow用户
提问于 2020-08-11 10:24:43
回答 3查看 39关注 0票数 0

我正在尝试用新行替换子字符串。

我的代码:str = str.split('testtest').join('test\ntest')

我的字符串:test,test,testtest,test,testtest,test,test

它应该如何处理代码行是如何调用的:

代码语言:javascript
复制
test,test,test
test,test,test
test,test,test

它实际上是如何对待它的,它被称为test,test,testtest,test,testtest,test,test

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-08-11 10:30:46

假设您希望将此结果放入html元素中,最简单的方法是使用innerText而不是innerHTML。

innerText将保留换行符,而innerHTML则不会。

​

代码语言:javascript
复制
var str = "test,test,testtest,test,testtest,test,test"

str = str.split("testtest").join("test\ntest");

document.getElementById("result").innerText = str;
代码语言:javascript
复制
<div id="result"></div>

​

票数 1
EN

Stack Overflow用户

发布于 2020-08-11 10:28:03

方法1:预标记不修剪\n符号:

​

代码语言:javascript
复制
const str = 'test,test,testtest,test,testtest,test,test'
  .split('testtest').join('test\ntest');
pre.innerHTML = str;
代码语言:javascript
复制
<pre id=pre></pre>

​

方法2:br

​

代码语言:javascript
复制
const str = 'test,test,testtest,test,testtest,test,test'
  .split('testtest').join('test<br/>test');
document.body.innerHTML = str;

​

票数 0
EN

Stack Overflow用户

发布于 2020-08-11 10:32:12

关键在于你是如何输出的。如果将其输出到控制台,则新行将按预期工作。如果您试图将其输出到HTML,那么您需要使用<br />而不是\n,甚至需要将其包装在<pre>标记中,就像另一个答案所建议的那样。要将其格式化为标记,我会这样做:

代码语言:javascript
复制
let str = "test,test,testtest,test,testtest,test,test";
str = str.split('testtest').join('test<br />test');
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63356217

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档