JavaScript拷贝例子(排序)
效果图
点击后
代码如下:
html部分
<input id="btn1" type="button" value="排序" />
<ul id="tab1" style="background:pink">
<li>34</li>
<li>25</li>
<li>9</li>
<li>88</li>
<li>54</li>
</ul>
js部分
<script>
window.onload = function () {
var oTab = document.querySelectorAll('ul li');
var oBtn = document.getElementById('btn1');
var oTab1 = document.querySelector("#tab1")
oBtn.function(){
var arr = [];
for(var i=0;i<oTab.length;i++){
arr[i]=oTab[i]
}
arr.sort(function(tr1,tr2){
var n1 = parseInt(tr1.innerHTML)
var n2 = parseInt(tr2.innerHTML)
return n1-n2;
})
for(var i=0;i<arr.length;i++){
// oTab1.appendChild(oTab[i])//如果这个不注释,结果会怎样?,欢迎在下面讨论
oTab1.appendChild(arr[i])//在ul里添加排序好的数组
}
}
}
</script>
浅拷贝:两个指针都指向同一个对象,所以若其中一个修改了,则另一个也会改变。
深拷贝:在计算机中开辟了一块新的内存地址用于存放复制的对象。