亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么不是逐一刪除?

for(var i=0;i<content.childNodes.length-1;i++){
???? var childNode = content.childNodes[i] ;
???? content.removeChild(childNode);
???? ?
???? ?
? }

正在回答

2 回答

這個for循環方法中,每次執行刪除以后content都發生了變化,比如刪除了content數組中的一個元素,content的長度就減一了,后面的元素依次往前頂一個。所以這里i不是逐一刪除,肯定是隔了一個,而且你這樣寫循環次數也會出錯。建議這樣寫:

var?length?=?content.childNodes.length;
for(var?i=0;i<length?;i++){
?????var?childNode?=?content.childNodes[0]?;
?????content.removeChild(childNode);
??????
??????
??}


0 回復 有任何疑惑可以回復我~

第一次循環的后刪除了第一個子節點,原本第二的個子節點又變成了第一個,而循環以2 開始了。因此第二次循環這次刪除的實際是原來的第三個節點。

此處content.childNodes[i]應將i變為1.

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

為什么不是逐一刪除?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號