刚才做JavaScript练习,尝试添加子节点的时候,查到了这么一段代码:
<script>
var para=document.createElement("p");
var node=document.createTextNode("这是新段落。");
para.appendChild(node);
var element=document.getElementById("div1");
element.appendChild(para);
</script>(源自:https://www.w3school.com.cn/js/js_htmldom_elements.asp)
由于一时偷懒,想直接合并起来写成一行,于是……
var para=document.createElement("p").appendChild(document.createTextNode("这是新段落。"));
结果发现一个问题,原本分开书写的方式,结果会是
<div>
<p>这是新段落。</p>
</div>
嗯,挺合情合理的……
但是合并书写了之后……变成了
<div>
"这是新段落。"
</div>
检查了一番,发现问题如下:
如果直接在定义元素(比如“p”)的时候就对其进行【appendChild()】操作,则会让元素的类型直接变成“child”的类型。比如在这个例子里,就成了[object Text]
目前的理解暂时是这样的,先做个记录吧~