Javascript从innerHTML中删除每行开头的空格

标签 javascript html

HTML:

<body>
    <div id="post">
        # Heading 1
        Text

        ## Heading 2
        More text
    </div>
</body>

如果我对此使用 document.getElementById("post").innerHTML ,它将返回:

"
        # Heading 1
        Text

        ## Heading 2
        More text
    "

如何删除开头的所有这些空格,如下所示:

"# Heading 1
Text

## Heading 2
More text"

谢谢

最佳答案

您可以使用String.prototype.trim删除多余的空格。

然后你可以用新行分割字符串,然后使用map方法删除多余的空格,并在末尾再次连接行。

const post = document.getElementById("post");
const parsedPost = post.innerHTML.trim().split("\n").map(line => line.trim()).join("\n");
console.log(parsedPost)
<body>
    <div id="post">
        # Heading 1
        Text

        ## Heading 2
        More text
    </div>
</body>

关于Javascript从innerHTML中删除每行开头的空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59456608/

相关文章:

html - 为什么文字会褪色但图像不会褪色?

javascript - 节点下方的 D3 js 链接

javascript - 在鼠标移动时从 Canvas 获取像素颜色

html - :nth-child strange behavior with h1 and p

html - HTML5 中的 MIDI 音乐支持

html - html 支付表单中的一般问题

javascript - 对多个文件 Javascript 使用构造函数

javascript - NodeJS/ExpressJS错误的http状态代码

javascript - 性能 - 对于 ajax 请求有多大算太大?

javascript - 为什么setState在循环中插入重复值