0Pricing
JavaScript Academy · Lección

Selección de elementos con querySelector

Encuentre elementos mediante selectores CSS.

Selección de elementos con querySelector es una lección gratuita de JavaScript Academy en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de JavaScript Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de JavaScript Academy incluye 4 lecciones en total.

Conozca querySelector

querySelector devuelve el primer elemento que coincide con un selector CSS, o null si no hay coincidencias. Está disponible en document y en todos los elementos.

const title = document.querySelector("h1");
console.log(title.textContent);

Funciona cualquier selector CSS

La ventaja de querySelector es que acepta los mismos selectores que usa en CSS: etiquetas, clases, identificadores, atributos y combinaciones.

document.querySelector("#main");      // by id
document.querySelector(".card");      // by class
document.querySelector("input[type=email]"); // by attribute

querySelectorAll

querySelectorAll devuelve todos los elementos coincidentes como un NodeList estático. Incluso sin coincidencias devuelve una lista vacía (nunca null).

const cards = document.querySelectorAll(".card");
console.log(cards.length);

Recorrer los resultados

Un NodeList de querySelectorAll admite forEach directamente, lo que facilita el recorrido.

const items = document.querySelectorAll("li");
items.forEach((li) => {
  console.log(li.textContent);
});

Selectores de descendientes

Puede seleccionar elementos anidados con un espacio (descendiente), igual que en CSS. Esto encuentra cada .price dentro de un .product.

const prices = document.querySelectorAll(".product .price");

Combinar clases

Encadenar clases sin espacios significa que un elemento debe tenerlas todas. Aquí seleccionamos botones que son principales y grandes.

const btn = document.querySelector("button.primary.large");

Consultas con ámbito

Al llamar a querySelector sobre un elemento (no sobre document), la búsqueda se limita al interior de ese elemento. Esto mantiene las búsquedas locales y rápidas.

const form = document.querySelector("#signup");
const emailField = form.querySelector("input[name=email]");

Pseudoclases

Las pseudoclases estructurales, como :first-child y :nth-of-type, también funcionan.

document.querySelector("li:first-child");
document.querySelectorAll("tr:nth-of-type(even)");

Gestionar la ausencia de coincidencias

Como querySelector puede devolver null, compruebe el resultado antes de usarlo para evitar un TypeError.

const banner = document.querySelector(".banner");
if (banner) {
  banner.classList.add("hidden");
}

Selectores de atributos

Los selectores de atributos permiten seleccionar elementos mediante atributos de datos, lo que resulta ideal para acceder a elementos sin depender de las clases.

const widget = document.querySelector("[data-role=widget]");
const openTabs = document.querySelectorAll("[aria-expanded=true]");

querySelector frente a las API antiguas

querySelector es más flexible que getElementById porque acepta cualquier selector, pero las búsquedas por identificador siguen siendo un poco más rápidas. Use la herramienta adecuada para cada tarea.

document.querySelector("#nav");        // flexible
document.getElementById("nav");        // fastest for ids

Comprobación rápida

Compruebe lo que sabe sobre los selectores.

Repaso

Ha aprendido que querySelector devuelve la primera coincidencia (o null) y que querySelectorAll devuelve un NodeList estático con todas las coincidencias. Ambos aceptan selectores CSS completos y pueden limitarse a un elemento principal. Compruebe siempre que no sea null al usar querySelector.

Preguntas frecuentes

¿La lección «Selección de elementos con querySelector» es gratis?

Sí — el texto completo de «Selección de elementos con querySelector» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de JavaScript Academy, actualiza a CoddyKit PRO. El curso de JavaScript Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Selección de elementos con querySelector»?

Encuentre elementos mediante selectores CSS. Practicas JavaScript Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar JavaScript Academy?

No se requiere experiencia previa. JavaScript Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.

¿Cuánto tiempo toma la lección «Selección de elementos con querySelector»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de JavaScript Academy?

Sí. Cada lección de JavaScript Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Selección de elementos con querySelector
  2. getElementById y getElementsByClassName
  3. Recorrido de padres, hijos y hermanos
  4. NodeList frente a HTMLCollection
← Volver a JavaScript Academy