返回课程

createTextNode 与 innerHTML 与 textContent 的区别

重要性:5

我们有一个空的 DOM 元素 elem 和一个字符串 text

以下 3 个命令中,哪两个命令的效果完全相同?

  1. elem.append(document.createTextNode(text))
  2. elem.innerHTML = text
  3. elem.textContent = text

答案:1 和 3

这两个命令都会将 text “作为文本” 添加到 elem 中。

以下是一个示例

<div id="elem1"></div>
<div id="elem2"></div>
<div id="elem3"></div>
<script>
  let text = '<b>text</b>';

  elem1.append(document.createTextNode(text));
  elem2.innerHTML = text;
  elem3.textContent = text;
</script>