使用 DOM 中的 nodeValue 属性可以获取节点的文本内容。需要遍历节点树并获取所有文本节点的 nodeValue 属性值。
示例代码:
function extractTextFromHTML(html) {
const tempElement = document.createElement('div');
tempElement.innerHTML = html;
let text = '';
function traverse(node) {
if (node.nodeType === Node.TEXT_NODE) {
text += node.nodeValue;
} else if (node.nodeType === Node.ELEMENT_NODE) {
const children = node.childNodes;
for (let i = 0; i < children.length; i++) {
traverse(children[i]);
}
}
}
traverse(tempElement);
return text;
}
const html = 'Hello world!
This is a test paragraph.
';
const text = extractTextFromHTML(html);
console.log(text);
// Output: "Hello world!This is a test paragraph."