You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

我的JavaScript DOM代码无法输出简单文本,问题出在哪里?

问题原因

  • 第一处错误:document.getElementById("body")无法获取到body元素,你的<body>标签没有设置id="body"属性,该语句返回值为null,调用appendChild方法时会直接抛出类型错误。
  • 第二处错误:你创建了文本节点text,但没有将它插入到paragraph段落元素中,就算能正常插入元素到页面,也只会显示空段落,看不到文本内容。

修复方案

你可以选择任意一种方式修改:

方案1:保留getElementById写法,给body加id

给<body>标签添加id="body"属性,同时补充paragraph.appendChild(text)语句将文本节点插入段落,完整代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body id="body">
    <script>
        const body = document.getElementById("body")
        const paragraph = document.createElement("p")
        const text = document.createTextNode("Hello, Mars")
        paragraph.appendChild(text)
        body.appendChild(paragraph)
    </script>
</body>
</html>

方案2:直接用document.body获取body元素

不需要额外给body加id,直接调用document.body即可获取页面的body元素,修改后代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        const body = document.body
        const paragraph = document.createElement("p")
        const text = document.createTextNode("Hello, Mars")
        paragraph.appendChild(text)
        body.appendChild(paragraph)
    </script>
</body>
</html>

内容的提问来源于stack exchange,提问作者user16770252

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 05:06:04