兄弟节点问题
重要性:5
如果 elem 是一个任意的 DOM 元素节点…
elem.lastChild.nextSibling是否始终为null?elem.children[0].previousSibling是否始终为null?
- 是的,正确。元素
elem.lastChild始终是最后一个,它没有nextSibling。 - 不,错误,因为
elem.children[0]是元素中的第一个子节点。但它之前可能存在非元素节点。所以previousSibling可能是一个文本节点。
请注意:对于这两种情况,如果没有任何子节点,则会发生错误。
如果元素没有子节点,则 elem.lastChild 为 null,因此我们无法访问 elem.lastChild.nextSibling。并且集合 elem.children 为空(就像一个空数组 [])。