Node.hasChildNodes

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

hasChildNodes方法返回一个布尔值,表明当前节点是否包含有子节点.

语法

js
hasChildNodes()

示例

下面的例子演示了:如果 id 为 foo 的这个元素有子节点,则从 dom 树中删除它的第一个子节点。

js
var foo = document.getElementById("foo");

if (foo.hasChildNodes()) {
  foo.removeChild(foo.childNodes[0]);
}

备注: Node.hasChildNodes是个方法,而不是普通属性,使用时必须加括号才能调用。

总结

有三种方法可以判断当前节点是否有子节点。

  • node.firstChild !== null
  • node.childNodes.length > 0
  • node.hasChildNodes()

规范

相关链接