Node.hasChildNodes()
Baseline
Ampliamente disponible
Esta característica está consolidada y funciona en muchos dispositivos y versiones de navegador. Está disponible en todos los navegadores desde julio de 2015.
El método Node.hasChildNodes() devuelve un valor Boolean indicando si el Node (nodo) actual tiene nodos hijos o no.
Sintaxis
resultado = node.hasChildNodes();
resultado-
almacena el valor devuelto
trueofalse.
Ejemplos
El siguiente ejemplo elimina el primer nodo dentro del elemento con id "foo" si foo tiene nodos hijos.
js
var foo = document.getElementById("foo");
if (foo.hasChildNodes()) {
// do something with 'foo.childNodes'
}
Polyfill
js
(function (prototype) {
prototype.hasChildNodes =
prototype.hasChildNodes ||
function () {
return !!this.firstChild;
};
})(Node.prototype);
Resumen
Hay varias maneras de determinar si el nodo tiene nodos hijos.
- node.hasChildNodes()
- node.firstChild != null (o sólo node.firstChild)
- node.childNodes && node.childNodes.length (o node.childNodes.length > 0)
Especificaciones
| Especificación |
|---|
| DOM> # ref-for-dom-node-haschildnodes①> |