ES6 Javascript: Características introducidas

ES6 Javascript

Características introducidas en ES6 Javascript

ES6 Javascript, también conocido como ECMAScript 6, es la sexta versión principal del lenguaje de programación JavaScript. Algunas de las nuevas características introducidas en ES6 incluyen:


1. Funciones de flecha

Una sintaxis abreviada para crear funciones anónimas. Ejemplo:

// ES5
var add = function(a, b) {
return a + b;
};
// ES6
let add = (a, b) => a + b;

2. Literales de plantilla

Una forma de crear cadenas con expresiones incrustadas. Ejemplo:

let name = "John";
console.log(`Hello, ${name}!`); // Output: "Hello, John!"

3. Desestructuración

Una forma de extraer valores de matrices u objetos y asignarlos a variables. Ejemplo:

// Array destructuring
let numbers = [1, 2, 3];
let [a, b, c] = numbers;
console.log(a, b, c); // Output: 1 2 3
// Object destructuring
let person = { name: "John", age: 30 };
let { name, age } = person;
console.log(name, age); // Output: "John" 30

4. Clases

Una forma de crear clases orientadas a objetos con constructores y métodos. Ejemplo:

class Person {
constructor(name, age) {
this.name = name;
this.age = age;
}
  sayHello() {
    console.log(`Hello, my name is ${this.name} and I'm ${this.age} years old.`);
  }
}let john = new Person("John", 30);
john.sayHello(); // Output: "Hello, my name is John and I'm 30 years old."

5. Módulos

Una forma de organizar y reutilizar el código dividiéndolo en varios archivos y exportando/importando valores. Ejemplo:

// In file "math.js"
export function add(a, b) {
return a + b;
}
// In file "main.js"
import { add } from "./math.js";
console.log(add(1, 2)); // Output: 3

6. let y const: ES6 introdujo dos nuevas formas de declarar variables

let y const. let es similar a var en que declara una variable a la que se le puede reasignar un nuevo valor, mientras que const declara una variable que no se puede reasignar. Ejemplo:

// ES5
var name = "John";
name = "Jane";
// ES6
let name = "John";
name = "Jane";const age = 30;
age = 25; // will throw an error because age is a const variable

7. Mejora de objeto literal

ES6 introduce una forma abreviada de valor de propiedad cuando las claves y los nombres de variables son los mismos.

// ES5
let name = "John";
let age = 30;
let person = { name: name, age: age };
// ES6
let name = "John";
let age = 30;
let person = { name, age };

8. Símbolo

Los símbolos son un nuevo tipo primitivo en JavaScript, que son únicos e inmutables. Son útiles para crear propiedades de objetos que no deberían ser enumerables o para proporcionar una propiedad privada para un objeto.

const symbol1 = Symbol();
const symbol2 = Symbol();
console.log(symbol1 === symbol2); // false

9. Iteradores

Los iteradores son una característica nueva en ES6 que le permite definir una secuencia de valores que se pueden iterar. Cada iterador es un objeto que implementa el método next(), que devuelve un objeto con dos propiedades: value y done.

let numbers = [1, 2, 3];
let iterator = numbers[Symbol.iterator]();
console.log(iterator.next()); // { value: 1, done: false }
console.log(iterator.next()); // { value: 2, done: false }
console.log(iterator.next()); // { value: 3, done: false }
console.log(iterator.next()); // { value: undefined, done: true }

10. Generadores

Los generadores son una característica nueva en ES6 que le permite crear iteradores con una sintaxis más simple. Se definen usando la sintaxis de function* y usan la palabra clave yield para controlar los valores que devuelve el iterador.

function* numbers() {
yield 1;
yield 2;
yield 3;
}
let iterator = numbers();
console.log(iterator.next()); // { value: 1, done: false }
console.log(iterator.next()); // { value: 2, done: false }
console.log(iterator.next()); // { value: 3, done: false }
console.log(iterator.next()); // { value: undefined, done: true }

11. Mapa y conjunto

El Map y Set son objetos nuevos introducidos en ES6, que son similares a los objetos y matrices, pero brindan algunas funciones adicionales. Los mapas son una forma de almacenar pares clave-valor, mientras que los conjuntos son una forma de almacenar valores únicos.

let map = new Map();
map.set("name", "John");
map.set("age", 30);
console.log(map.get("name")); // "John"
console.log(map.get("age")); // 30
let set = new Set();
set.add(1);
set.add(2); 
set.add(3); 
set.add(3); // Duplicate value will be ignored console.log(set.size); // 3 
console.log(set.has(2)); // true set.delete(2); console.log(set.has(2)); // false

Gracias por llegar hasta aquí, si encuentras esto útil no olvides dejar un👍🏼y suscribirse para recibir más contenido.

Si le interesa, puede echar un vistazo a algunos de los otros artículos que he escrito recientemente sobre Node.js y AWS Lambda:

Recent Post