子節點數組不具有數組的特性?,如arr.shift()這個方法?
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>無標題文檔</title>
</head>
<body>
<div id="content">
? <h1>html</h1>
? <h1>php</h1>
? <h1>javascript</h1>
? <h1>jquery</h1>
? <h1>java</h1>
</div>
<script type="text/javascript">
function clearText() {
? var content=document.getElementById("content");
? var otest=content.childNodes;
? //var n=otest.length;
? ? //for(i=0;i<n;i++){
? ? //實現點擊一次,只刪除一個節點的效果
? ? if(otest[0].nodeType==1){
? ? ? content.removeChild(otest[0]) ??
? ? }else{
? ? ? otest.shift();//這個方法不行,是不是意味著子節點數組不具有數組的特性?,如arr.shift()這個方法?
? ? ? content.removeChild(otest[0]);
? ??
? ? }
? ? ?
? ? //document.write(renode.innerHTML+"<br>");
? ? //}
??
}
</script>
<button onclick="clearText()">清除節點內容</button>
</body>
</html>
2016-07-18
我覺得可以這么理解。更準確的說它和數組碰巧都有length屬性,而不是說集合有數組的length屬性。var str="test";test.length==4. 你看,字符串也有length屬性,字符串并不是數組,length屬性也不是數組獨有的。
2022-03-26
你看看你分號是不是打錯了要在英文狀態下打js中沒有這種用法。。
2016-07-17
這是Chrome debug tool 的運行結果,相信看了你就明白了:
如果你要刪除children的第一個對象,直接children[0].remove() 即可
2016-07-16
你可以用console.log()這個函數打印出來,在控制臺查看其結構合數組有什么不同
2016-07-16
childNodes 屬性,標準的,它返回指定元素的子元素集合,包括HTML節點,所有屬性,文本,它并不是數組