Cómo manejar el nodo parentNode en JavaScript

Autor: | Última modificación: 18 de marzo de 2024 | Tiempo de Lectura: 3 minutos
Temas en este post: , ,

Algunos de nuestros reconocimientos:

Premios KeepCoding

¿Alguna vez te has enredado en la maleza del DOM, intentando dar con la forma de encontrar el padre de un nodo y sintiendo que estás en un laberinto sin salida? El nodo parentNode en JavaScript está aquí para salvarte el día. En este artículo, nos centraremos en cómo manejar la propiedad parentNode en JavaScript.

¿Qué es el nodo parentNode en JavaScript?

Antes de lanzarnos a los detalles técnicos, vamos a empezar con lo básico: ¿qué es exactamente el nodo parentNode en JavaScript? Para responder a esa pregunta, tenemos que entender cómo se estructuran los elementos en una página web. En esencia, cada elemento de una página es un nodo en el árbol del DOM y cada nodo puede tener un nodo padre, un nodo hijo e incluso nodos hermanos.

El nodo parentNode en JavaScript devuelve el padre del nodo especificado. Y si te estás preguntando qué significa «nodo padre«, este es simplemente el nodo que está un nivel por encima del nodo actual en el árbol del DOM. O, para decirlo de una manera más simple, es el nodo que contiene el nodo actual.

Utilizando el nodo parentNode en JavaScript

Ahora que tenemos una idea de lo que es el nodo parentNode en JavaScript, veamos cómo podemos utilizarlo. Supongamos que tenemos el siguiente código HTML:

<div id="contenedor">
    <p id="parrafo">¡Hola KeepCoders!</p>
</div>

Si queremos seleccionar el nodo padre del párrafo, podemos hacerlo utilizando parentNode en JavaScript de la siguiente manera:

let parrafoNodo = document.getElementById('parrafo');
let padreDelNodo = parrafoNodo.parentNode;

En este caso, padre del nodo sería el elemento div con id «contenedor», ya que es el padre directo del párrafo.

Propiedades relacionadas con parentNode

El objeto Node en JavaScript tiene varias propiedades y métodos que nos ayudan a movernos por el árbol del DOM. Algunas de las más útiles para navegar entre los nodos son:

  • firstChild: esta propiedad nos permite acceder al primer hijo de un nodo.
  • lastChild: similar a firstChild, pero nos permite acceder al último hijo.
  • nextSibling: nos permite acceder al próximo nodo hermano.
  • previousSibling: nos permite acceder al nodo hermano anterior.

Así que, si estás buscando una forma de moverte a través del árbol del DOM, estas propiedades podrían ser tu camino a seguir.

parentNode en la práctica

Cuando se trabaja con parentNode, una de las cosas más interesantes es que se puede usar de forma iterativa para moverse por el árbol del DOM. Por ejemplo, puedes usar parentNode para encontrar el nodo abuelo (el padre del nodo padre) de un nodo específico.

Imaginemos que tenemos un fragmento de código HTML que se ve así:

<div id="abuelo">
  <div id="padre">
    <p id="hijo">¡Hola KeepCoders!</p>
  </div>
</div>

En este caso, si quieres seleccionar el nodo abuelo del párrafo, podrías hacerlo utilizando parentNode dos veces:

let hijoNodo = document.getElementById('hijo');
let abueloNodo = hijoNodo.parentNode.parentNode;

En el fragmento de código anterior, la primera vez que llamamos al nodo parentNode en JavaScript obtenemos el nodo padre. Luego, al llamar a parentNode una segunda vez sobre el resultado, obtenemos el nodo abuelo.

Aunque puede parecer un poco abstracto al principio, una vez que comprendas cómo funciona parentNode y cómo se estructuran los nodos en el DOM, verás que es una herramienta increíblemente útil. Ya sea que estés tratando de seleccionar un nodo específico o simplemente navegando por el árbol del DOM, parentNode puede hacer tu vida mucho más fácil.

Aprende más con nosotros

Te invitamos a unirte al Desarrollo Web Full Stack Bootcamp de KeepCoding. Este no es simplemente un curso de programación: es un cambio de vida. En poco tiempo, te prepararemos para entrar en el sector IT, una industria que no solo ofrece salarios altos y estabilidad laboral, sino también la oportunidad de ser parte de la construcción del futuro digital.

¿Estás listo para hacer ese cambio y dar un salto en tu carrera profesional? ¡Entra ahora y solicita más información!

Artículos ms leídos

¡CONVOCATORIA ABIERTA!

Desarrollo Web

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado