如何用JavaScript将HTML中3行文本转为无空格的3元素数组?
解决方法
可以通过先清理整体文本,再过滤无效行,最后逐行去空格的方式实现,直接用原生JS搞定,不用改HTML:
// 获取目标元素的文本内容 const textContent = document.querySelector('.example-text').textContent; // 一步步处理得到干净的数组 const resultArray = textContent .trim() // 先把文本首尾的空白、换行全清掉 .split('\n') // 按换行分割成数组 .filter(line => line.trim() !== '') // 删掉那些空的或者全是空格的无效行 .map(line => line.trim()); // 给每一行单独去掉前后多余空格 console.log(resultArray); // 输出就是长度为3的数组,每个元素对应原文本的一行
为啥这么写?
- 先整体
trim()是为了避免原文本开头或结尾的空换行生成无效数组元素 filter步骤能把换行分割后产生的空行(比如连续换行的情况)过滤掉- 最后
map里的trim()确保每一行的前后多余空格都被清除,得到纯文本内容
内容的提问来源于stack exchange,提问作者Sung-99
相关产品推荐
相关产品推荐

