Retour aux articles
viernes, 13 de diciembre de 202446 vues3

Las 5 Cosas que Debes Dominar en JavaScript Moderno (ES6+)

Mike Codeur

ESNext
Astuces
Cheat Sheet
JavaScript

Desde el lanzamiento de ECMAScript 6 (ES6), JavaScript ha experimentado una evolución espectacular. Las nuevas características hacen que el lenguaje sea más poderoso, expresivo y fácil de usar. Si quieres ser un desarrollador eficaz, dominar estas características modernas es esencial.

En este artículo, exploraremos cinco características imprescindibles de JavaScript moderno con explicaciones y ejemplos prácticos.


1. El Método .map() para Manipulación de Arrays

El método .map() es una herramienta indispensable para trabajar con arrays. Permite transformar cada elemento de un array utilizando una función dada y devuelve un nuevo array sin modificar el original.

Ejemplo Práctico:

JAVASCRIPT
const numeros = [1, 2, 3, 4];
const duplicados = numeros.map((numero) => numero * 2);

console.log(duplicados); // [2, 4, 6, 8]

Aquí, cada elemento del array numeros se multiplica por 2. El resultado es un nuevo array, siguiendo los principios de la programación funcional.


2. Encadenamiento Opcional ?. para Acceso Seguro

El encadenamiento opcional simplifica el acceso a propiedades profundamente anidadas en objetos sin necesidad de verificar si cada nivel existe.

Ejemplo Práctico:

JAVASCRIPT
const usuario = {
  perfil: {
    nombre: 'Mike',
  },
};

console.log(usuario.perfil?.nombre); // 'Mike'
console.log(usuario.direccion?.ciudad); // undefined

Si direccion no existe, el encadenamiento opcional evita un error y devuelve undefined.


3. Fusión Nula ?? para Valores Predeterminados

El operador de fusión nula permite definir un valor predeterminado solo si el valor de la izquierda es null o undefined.

Ejemplo Práctico:

JAVASCRIPT
const nombreUsuario = null;
const nombreMostrar = nombreUsuario ?? 'Invitado';

console.log(nombreMostrar); // 'Invitado'

A diferencia del operador ||, ?? no trata los valores falsy (como 0 o "") como nulos.


4. Desestructuración para un Código Más Claro

La desestructuración permite extraer fácilmente datos de objetos o arrays.

Ejemplo Práctico:

Desestructuración de Objetos:

JAVASCRIPT
const usuario = {
  nombre: 'Mike',
  edad: 30,
};

const { nombre, edad } = usuario;

console.log(nombre); // 'Mike'
console.log(edad); // 30

Desestructuración de Arrays:

JAVASCRIPT
const colores = ['rojo', 'verde', 'azul'];
const [primero, , tercero] = colores;

console.log(primero); // 'rojo'
console.log(tercero); // 'azul'

5. Promesas y async/await para Código Asíncrono Claro

Trabajar con código asíncrono puede ser un desafío. Las promesas y async/await hacen que esta tarea sea mucho más intuitiva.

Ejemplo Práctico:

Usando una Promesa:

JAVASCRIPT
fetch('https://api.example.com/data')
  .then((response) => response.json())
  .then((data) => console.log(data))
  .catch((error) => console.error('Error:', error));

Usando async/await:

JAVASCRIPT
async function obtenerDatos() {
  try {
    const response = await fetch('https://api.example.com/data');
    const data = await response.json();
    console.log(data);
  } catch (error) {
    console.error('Error:', error);
  }
}

obtenerDatos();

async/await evita el encadenamiento de llamadas .then(), haciendo que el código sea más legible.


Conclusión

Estas cinco características modernas de JavaScript (.map(), ?., ??, desestructuración, y async/await) son esenciales para cualquier desarrollador que busque escribir código limpio, legible y eficiente. Al incorporarlas en tu conjunto de herramientas, mejorarás significativamente tu productividad y habilidades técnicas.

¡No dudes en probar estos conceptos en tu próximo proyecto y compartir tus experiencias en los comentarios!

Abonnes-toi à la NewsLetter

Apprends les meilleures pratiques pour devenir un développeur web moderne (JavaScript / React / Next).

Gagner sa vie grâce au code
Devenir développeur Freelance
+35 000 développeurs déjà inscrits.

Accès instantané. Aucune carte de crédit requise.

Rejoins +35 000 développeurs déjà inscrits.