返回課程

兄弟元素問題

重要性:5

如果 elem – 是任意的 DOM 元素節點…

  • elem.lastChild.nextSibling 是否永遠為 null
  • elem.children[0].previousSibling 是否永遠為 null
  1. 是的,正確。元素 elem.lastChild 永遠是最後一個,它沒有 nextSibling
  2. 不,錯誤,因為 elem.children[0]元素中的第一個子元素。但在它之前可能存在非元素節點。因此 previousSibling 可能會是文字節點。

請注意:對於這兩種情況,如果沒有子項,則會發生錯誤。

如果沒有子項,elem.lastChildnull,因此我們無法存取 elem.lastChild.nextSibling。而集合 elem.children 為空 (例如空陣列 [])。