Libro de Texto Superior de JavaScript

Estilización

Estilización mediante el atributo style Unidades de medida en el atributo style Errores con unidades de medida Desempaquetado de valores de propiedades CSS Restablecimiento de estilos mediante style Establecimiento masivo de estilos Problemas de lectura de estilos Lectura de propiedades desde archivos CSS Conversión de valores leídos Estilización por clases Una clase para estilización Inconveniencia de las clases Alternancia de estilos mediante data-

Métricas de elementos

Expansión de elementos en CSS Elemento de prueba Tamaño del cliente del elemento Tamaño completo del elemento Dimensiones del elemento con desplazamiento Desplazamiento de elementos Cambio del desplazamiento del elemento Desplazar el elemento hasta el final Despliegue del elemento Ancho de la barra de desplazamiento

Métricas de la ventana

Tamaño de la ventana Tamaño de la ventana con scroll Obtener el scroll de la ventana Obtener y cambiar el scroll de la ventana Método para scrollear la ventana a una posición Método para scrollear la ventana en un valor Método para scrollear la ventana a un elemento Evento de scroll

Colecciones Map

Introducción Capacidades útiles Iteración con bucle Claves y valores Aplicación de Map

Colecciones Set

Introducción Relleno inicial Capacidades útiles Iteración con bucle Conversión Eliminación de duplicados de un array Obtención sin duplicados

Arreglos Pseudos

Introducción Similitud con los arreglos Diferencias Comprobación de arreglo Conversión a arreglo Tipos de arreglos pseudos Diferencia entre tipos

Símbolos

Introducción al tipo Symbol Descripciones del símbolo Símbolos como claves de objetos Iteración de objetos con símbolos Función en un objeto Operaciones con objetos en la función Símbolos globales Obtención del nombre del símbolo Símbolos bien conocidos

Iteradores

Objetos iterables Función iteradora Invocaciones del iterador Generadores Bucles en generadores Trabajo único de iteradores Iterador de objeto Creación de objetos iterables Generador mediante propiedad calculada Iterador incorporado values Iterador incorporado keys Iterador incorporado entries Tres iteradores incorporados Operador spread e iteradores Iteradores incorporados de cadenas Array de dígitos de un número Numeración de elementos DOM Obtención de datos de elementos DOM

Formato JSON

Introducción JSON a datos Datos a JSON Modificación de datos en JSON

Almacenamiento

Introducción Almacenamiento en el depurador Datos Guardado único Reescritura de datos Eliminación de datos Limpieza del almacenamiento Cantidad de registros Obtención de clave por número Recorrido del almacenamiento por índices Arrays de claves y valores del almacenamiento Almacenamiento de estructuras Modificación de estructuras almacenadas Práctica

Expresiones Regulares

Introducción Operadores de Repetición Paréntesis de Agrupación Escape de Caracteres Especiales Llaves Limitación de la Codicia Grupos de Caracteres Conjuntos de Caracteres Inversión de Conjuntos de Caracteres Particularidades del Cirílico Caracteres Especiales dentro de Conjuntos Grupos de Caracteres dentro de Conjuntos Caracteres Especiales-Excepción dentro de Conjuntos Símbolo de Acento Circunflejo dentro de Conjuntos Particularidades del Guion dentro de Conjuntos Ignorar Mayúsculas y Minúsculas Inicio y Fin de Línea Límite de Palabras Multilínea Comando 'o' Variable con Expresión Regular Método test Método search Método split Método match Grupos de Captura en el método match match Global matchAll Global Método exec Propiedad lastIndex Grupos de Captura en el método replace Callback en el método replace Grupos de Captura por Defecto en el método replace Grupos de Captura en la Expresión Regular Grupos de Captura con Nombre Grupos de Captura con Nombre dentro de la Expresión Paréntesis No Capturadores Búsqueda hacia Adelante y Atrás Positiva y Negativa Cadena con Expresión Regular Banderas para Cadenas Barra Invertida en Cadenas

Situaciones excepcionales

Introducción Tipos de situaciones emergentes Captura de excepciones Desarrollo con try-catch Captura de excepciones en código anidado Objeto de excepción Tipos básicos de excepciones Aplicación de tipos de excepción Lanzamiento de excepciones Lanzamiento de varios tipos de excepciones Lanzamiento de tipos de excepciones propios Ejemplo de excepción con atributos data- Ejemplo de excepción con JSON Propagación de excepciones

Asincronía

Código síncrono y asíncrono Asincronía del modelo de eventos Asincronía de carga de imágenes Situaciones excepcionales en código asíncrono

Devoluciones de llamada asíncronas

Introducción Paso asíncrono del resultado a la devolución de llamada Paso de parámetros a la devolución de llamada asíncrona Manejo de excepciones en devoluciones de llamada asíncronas Carga de imágenes El problema del infierno de las devoluciones de llamada Carga asíncrona de imágenes en bucle

Promesas

Introducción a las promesas Situaciones excepcionales Objeto con error Captura separada de excepciones Estados de una promesa Cadenas de promesas Promesas dentro de una cadena Excepciones en cadenas de promesas Trabajo con arrays de promesas Creación de promesas cumplidas Promisificación de código asíncrono Problema del infierno de promesas Promesas en estilo síncrono Excepciones en estilo síncrono

Bibliotecas

Introducción Uso CDN Inconvenientes de las bibliotecas

Herramientas

Control de versiones semántico Terminal NodeJS Introducción a npm Instalación mediante npm Forma corta de instalación Dependencias en el archivo package.json Dependencias de desarrollo Formatos de versiones de dependencias Configuración del archivo package.json Creación del archivo package.json Transferencia de proyecto npm Archivo package-lock.json Actualización de paquetes Eliminación de paquetes Instalación global mediante npm Eliminación global de paquetes Herramienta npx Ejecución de scripts mediante npm Gestor Yarn

Módulos ES

Introducción a los módulos Activación de módulos ES Instalación de Webpack Principio de funcionamiento de Webpack Configuración de Webpack Configuración de ejecución de compilación de Webpack Compilación de prueba mediante Webpack Conexión del bundle al markup Creación de un módulo ES Conexión de un módulo ES Renombrado en la importación Importar todo el contenido del módulo Exportación por defecto Combinación de exportaciones Importar todo el contenido al combinar exportaciones Exportación de valores Valores como constantes Importación de módulos npm Importación dinámica Importación múltiple dinámica Conversión de módulos CommonJS

Protocolo HTTP

Estudio del libro de HTTP URLSearchParams URL

Servidor de Pruebas

Introducción Uso Ejecución de Código Generación de HTML Encabezados de Respuesta Configuración del Puerto Lanzamiento Múltiple

Formularios

Envío de formularios Métodos de envío de formularios Envío de formularios con el método GET Envío de formularios con el método POST Solicitudes GET Aplicación de solicitudes GET Botones del formulario Envío de formularios mediante JavaScript Prevención del envío del formulario Introducción a FormData Métodos de FormData Iteradores de FormData

AJAX

Introducción a AJAX Fundamentos de fetch Código de respuesta HTTP Éxito de la solicitud Situaciones excepcionales Captura completa de errores Encabezados de respuesta HTTP Obtención de JSON Encabezados de solicitud HTTP Solicitudes GET Solicitudes POST Datos mediante URLSearchParams Datos mediante FormData Envío de todo el formulario Envío de JSON Política CORS Transmisión de cookies Estilo síncrono

Trabajo con lienzo

Introducción Dibujo de líneas Dibujo de rectángulos Dibujo de círculos Cambio de color de línea Cambio de tamaño de líneas Bucles

Optimización de Código

Factores de Velocidad de Carga del Sitio Recursos Disponibles Optimización de Operaciones Repetitivas Optimización de Repetición de Operaciones Pesadas Optimización de Operaciones en Bucles Optimización de Pasadas de Bucle Innecesarias Optimización mediante Funciones Integradas Selección del Algoritmo Óptimo Optimización del Uso de Expresiones Regulares Optimización del Trabajo con el DOM Optimización del Consumo de Memoria Optimización de la Conversión a Array Optimización de Manejadores de Eventos Optimización de Velocidad a Costa de Memoria

Datos

Inmutabilidad Copia de array Copia de objeto Añadir elementos a un array Eliminar elementos de un array Cambiar elementos de arrays Array de objetos Generación de id aleatorio Añadir elemento con id Eliminar elemento por id Cambiar elemento por id Cambiar una propiedad por id Obtener elemento por id
ithydept