誰能告訴我,這兩端代碼有啥區別嗎(http://www.xianlaiwan.cn/code/1700)
// function clearText() {
// ? var content=document.getElementById("content");
// ? // 在此完成該函數
// ? var childNodes = content.childNodes;
// ? for(i=0;i<childNodes.length;i++){
// ? ? ?content.removeChild(childNodes[0]);
// ? }
??
// }
function clearText() {
? var content=document.getElementById("content");
? // 在此完成該函數
? var nodel=content.childNodes.length;
? for(var i=0;i<nodel;i++){
? ? ? content.removeChild(content.childNodes[0]);
? }
}
2019-05-15
2019-05-15
2019-05-15
測試內容
2019-05-15
測試內容
2017-05-20
區別是第一個的content.childNodes.length隨著你刪除的節點個數在變化而下面的代碼你將contentlchildNodes.length的初始值賦值給nodel值不會變化
2017-04-07
這是刪除的順序問題,因為你刪除第一個的時候其他的節點的順序發生了改變,第二個節點代替了第一個節點的位置,后面一次類推,所以最刪除的節點為1,3,5.。。等等
你的第二個函數這是永遠執行的是刪除第一個節點,那怕后面的順序改變,也不會有影響的,因為他是一個一個個的上。。
當然你也可以換個順序進行刪除,var nodel=content.childNodes.length-1;
for(var i=nodel;i>=0;i--)
{
content.removeChild(content.childNodes[i]);
}
2017-03-31
上面一個清除節點,第一次沒效果,第二次突然清除3個,第三、四次各清除1個,而下面的能夠做到一次性直接全部清除,為什么?