雖然寫出來了 但是邏輯有點混亂
function clearText() {
? var content=document.getElementById("content");
? // 在此完成該函數(shù)
? for(i=content.childNodes.length;i>0;i++){
? ? ? content.removeChild(content.childNodes[0])?
}
}
這個代碼雖然可以用 但是我對里面的順序有點不理解 我自己理解是
第一次循環(huán)之后 i的值雖然加一了但是在第二圈循環(huán)開始的時候i重新賦值了所以i++這個條件并沒有什么用
for(i=content.childNodes.length;i>0;)
然后一開始我是這么寫的 測試的時候失敗了后來重新試試又成功了 不知道這么寫有問題嗎?
2015-05-29
首先來了解一下 for 循環(huán)在 js 中的運行機制
語句 1?在循環(huán)(代碼塊)開始前執(zhí)行
語句 2?定義運行循環(huán)(代碼塊)的條件
語句 3?在循環(huán)(代碼塊)已被執(zhí)行之后執(zhí)行
所以 循環(huán)階段 語句1是不執(zhí)行的 ;然后循環(huán)開始,先判斷語句2 成功則執(zhí)行代碼塊 失敗則跳出循環(huán);如果運行代碼塊,每一次循環(huán)結(jié)束后執(zhí)行語句3
然后我們來看代碼
這段代碼原意應(yīng)該是刪除 content 的所有子元素,按照邏輯 for循環(huán)中的語句3應(yīng)該為 i--
最后如果 不想寫語句1 和語句3的話 可以改寫成
哎 寫了這么多 最后發(fā)現(xiàn) 代碼中 循環(huán)里有個分號用的是 中文的分號;