sam*_*sam -2 html javascript html5 while-loop removechild
<ul id="myList">
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
<li>Item 4</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
我似乎无法理解这个while语句如何删除上面列表中的所有节点.有人可以解释一下吗?
while(myList.firstChild) {
myList.removeChild(myList.firstChild)
};
Run Code Online (Sandbox Code Playgroud)
读一会儿

HTML
<ul id="myList">
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
<li>Item 4</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
js代码
while(myList.firstChild) // loop will run while myList has a firstChild
{myList.removeChild(myList.firstChild)
};
Run Code Online (Sandbox Code Playgroud)
运行
1st time while loop run firstChild is <li>Item 1</li> --> code runs and remove it.
Run Code Online (Sandbox Code Playgroud)
现在是HTML
<ul id="myList">
<li>Item 2</li>
<li>Item 3</li>
<li>Item 4</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
跑
2nd time while loop run firstChild is <li>Item 2</li> --> code runs and remove it.
Run Code Online (Sandbox Code Playgroud)
现在是HTML
<ul id="myList">
<li>Item 3</li>
<li>Item 4</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
跑
3rd time while loop run firstChild is <li>Item 3</li> --> code runs and remove it.
Run Code Online (Sandbox Code Playgroud)
现在是HTML
<ul id="myList">
<li>Item 4</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
跑
4th time while loop run firstChild is <li>Item 4</li> --> code runs and remove it.
Run Code Online (Sandbox Code Playgroud)
现在是HTML
<ul id="myList">
</ul>
Run Code Online (Sandbox Code Playgroud)
跑
js代码将无法运行,因为没有第一个孩子myList.循环条件失败.