node.cloneNode ()方法返回调用该方法的节点的-一个副本。也称为克隆节点/拷贝节点
- 如果括号参数为空或者为false,则是浅拷贝,即只克隆复制节点本身,不克隆里面的子节点。
- 如果括号参数为true,则是深度拷贝,会复制节点本身以及里面所有的子节点。
①浅拷贝
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>clonetest</title>
</head>
<body>
<ul>
<li>123</li>
<li>123</li>
<li>123</li>
</ul>
</body>
<script>
var ul = document.querySelector("ul");
ul.appendChild(ul.children[0].cloneNode());
</script>
</html>
②深拷贝
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>clonetest</title>
</head>
<body>
<ul>
<li>123</li>
<li>123</li>
<li>123</li>
</ul>
</body>
<script>
var ul = document.querySelector("ul");
ul.appendChild(ul.children[0].cloneNode(true));
</script>
</html>