Sobes.tech
Junior

Avec quelles nouveautés en ES6 êtes-vous familier?

sobes.tech IA

Réponse de l'IA

  • let, const, var: let et const pour la portée de bloc, var pour la portée de fonction. const pour les constantes, let pour les variables qui peuvent être réaffectées.
  • Fonctions fléchées (Arrow Functions): Syntaxe raccourcie pour déclarer des fonctions. this lexical.
  • Littéraux de modèle (Template Literals): Permettent d’insérer des expressions et des chaînes multilignes.
    const name = "World";
    const greeting = `Hello, ${name}!`; // "Hello, World!"
    
  • Destructuration (Destructuring Assignment): Manière pratique d’extraire des valeurs de tableaux et d’objets.
    const person = { firstName: "John", lastName: "Doe" };
    const { firstName, lastName } = person; // firstName = "John", lastName = "Doe"
    
  • Opérateur spread (...) et paramètres rest (...): Spread pour étendre et fusionner des tableaux/objets. Rest pour rassembler les arguments restants d’une fonction dans un tableau.
    const arr1 = [1, 2];
    const arr2 = [...arr1, 3, 4]; // [1, 2, 3, 4]
    
    function sum(...numbers) {
      return numbers.reduce((acc, current) => acc + current, 0);
    }
    sum(1, 2, 3); // 6
    
  • Classes (Classes): Sucre syntaxique sur l’héritage prototype.
    class Car {
      constructor(brand) {
        this.brand = brand;
      }
      drive() {
        console.log(`${this.brand} is driving.`);
      }
    }
    
  • Modules (Modules): Outil pour organiser le code avec import et export.
    // module.js
    export const PI = 3.14;
    
    // main.js
    import { PI } from './module.js';
    
  • Promises (Promesses): Simplifient le travail avec le code asynchrone.
    new Promise((resolve, reject) => {
      // Opération asynchrone
      if (success) {
        resolve("Succès!");
      } else {
        reject("Erreur!");
      }
    })
    .then(result => console.log(result))
    .catch(error => console.error(error));
    
  • Boucle for...of: Itération sur des objets itérables (tableaux, chaînes, Map, Set, etc.).
    const arr = [1, 2, 3];
    for (const value of arr) {
      console.log(value); // 1, 2, 3
    }
    
  • Set et Map: Nouvelles structures de données. Set pour des valeurs uniques, Map pour des paires clé-valeur.