0Pricing
TypeScript Academy · Lección

Tipos lib DOM y querySelector (comprobaciones estrictas de null)

Comprenda los tipos lib DOM y seleccione elementos de forma segura con querySelector mediante comprobaciones estrictas de null.

Tipos lib DOM y querySelector (comprobaciones estrictas de null) es una lección gratuita de TypeScript Academy en CoddyKit. Esta es la lección 1 de 3. 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 TypeScript Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de TypeScript Academy incluye 3 lecciones en total.

Introducción

Objetivo: usar tipos de lib DOM y querySelector de forma segura. Comprobará primero si el resultado es null y, después, usará tipos acotados para las API de los elementos.

Tipos de lib DOM

La lib DOM de TS proporciona tipos para los globales del navegador (por ejemplo, Document, HTMLElement, Event), lo que permite IntelliSense y las comprobaciones.

// DOM types come from the lib DOM definitions
// Examples: Document, HTMLElement, HTMLInputElement, Event

const title: string = document.title; // Document API
console.log("Title:", title);

Tipo de querySelector

querySelector devuelve Element | null. Con strictNullChecks, debe gestionar explícitamente el caso null.

const el = document.querySelector("#app");
// el: Element | null with strictNullChecks
console.log("Found?", el !== null);

Guarda con retorno anticipado

Añada una guarda al principio: compruebe si es null y devuelva un valor o lance una excepción. Después de la guarda, la variable no es nula en esa rama.

function mount() {
  const root = document.querySelector("#app");
  if (!root) {
    console.warn("No #app found");
    return; // root is narrowed below only if present
  }
  // root: Element
  root.innerHTML = "<strong>Hello TS + DOM</strong>";
}

mount();

Acotación a un subtipo

Acote aún más con instanceof a un subtipo específico como HTMLInputElement para disponer de las API propias del elemento.

function readInputValue() {
  const input = document.querySelector("#name");
  if (!(input instanceof HTMLInputElement)) {
    return; // not an <input>
  }
  // input: HTMLInputElement
  console.log("value=", input.value);
}

readInputValue();

Precaución con la aserción de no nulo

Evite la aserción de no nulo (!) salvo que tenga absoluta certeza. Las guardas hacen que el código en tiempo de ejecución sea más seguro.

function bad() {
  const root = document.querySelector("#app")!; // unsafe if #app missing
  // Potential runtime error below if root is actually null
  root.textContent = "unsafe";
}

// Prefer guarded version instead of non-null assertion

Comprobación del patrón de guarda

Comprobación rápida: después de const el = document.querySelector("#app") con comprobaciones estrictas de nulos, ¿cuál es el siguiente paso más seguro?

Resumen

Resumen: los tipos del DOM proporcionan IntelliSense. querySelector devuelve Element | null; añada una guarda antes de usar el resultado. Acote con instanceof para acceder a las API específicas del elemento.

Preguntas frecuentes

¿La lección «Tipos lib DOM y querySelector (comprobaciones estrictas de null)» es gratis?

Sí — el texto completo de «Tipos lib DOM y querySelector (comprobaciones estrictas de null)» 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 TypeScript Academy, actualiza a CoddyKit PRO. El curso de TypeScript Academy incluye 3 lecciones en total.

¿Qué aprenderé en «Tipos lib DOM y querySelector (comprobaciones estrictas de null)»?

Comprenda los tipos lib DOM y seleccione elementos de forma segura con querySelector mediante comprobaciones estrictas de null. Practicas TypeScript 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 TypeScript Academy?

No se requiere experiencia previa. TypeScript 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 3.

¿Cuánto tiempo toma la lección «Tipos lib DOM y querySelector (comprobaciones estrictas de null)»?

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 TypeScript Academy?

Sí. Cada lección de TypeScript 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. Tipos lib DOM y querySelector (comprobaciones estrictas de null)
  2. Tipos de eventos, eventos personalizados y reducción de subtipos de HTMLElement
  3. Trabajo con FormData, URL y URLSearchParams
← Volver a TypeScript Academy