const tbody = document.querySelector('tbody');
while (tbody.firstChild) {
tbody.removeChild(tbody.firstChild);
}
こちらの文は、tbody
のfirstChild
を削除して新規の月のみ表示させるためだと思うのですが、こちらをコメントにしてこの分の処理を無効にし、HTMLでのtbody
内の挙動を確認したところ、tbody
内に新規の月のtr
が追加されていました。以下
<tbody>
<tr> // ← firstChild
<tr>
<tr>
<tr>
</tbody>
↓
<tbody>
<tr> // ← firstChild
<tr>
<tr>
<tr>
<tr>
<tr>
<tr>
<tr>
</tbody>
私の認識ではchildNode
= 最初の子ノードなので、こちらだとtbody
のfirstChild
は印をしたところのみだと思っていました。
結果では、ひと月分のtr
がfirstChild
で削除されているので、今回のfirstChild
がなぜひと月分のtrを含んでいるのかわかりません。
この回答を見るにはプレミアムプランへの登録が必要です
プレミアムプランとは?