Junior
Cu ce noutăți din ES6 ești familiarizat?
sobes.tech AI
Răspuns de la AI
- let, const, var: let și const pentru scop de bloc, var pentru scop de funcție. const pentru constante, let pentru variabile care pot fi reasignate.
- Funcții săgeată (Arrow Functions): Sintaxă scurtă pentru declararea funcțiilor.
thislexical. - Literale de șablon (Template Literals): Permite inserarea de expresii și stringuri multiliniere.
const name = "World"; const greeting = `Hello, ${name}!`; // "Hello, World!" - Atribuirea destrucționată (Destructuring Assignment): Mod convenabil de a extrage valori din array-uri și obiecte.
const person = { firstName: "John", lastName: "Doe" }; const { firstName, lastName } = person; // firstName = "John", lastName = "Doe" - Operatorul spread (...) și parametrii rest (...): Spread pentru extindere și combinare de array-uri/obiecte. Rest pentru colectarea argumentelor rămase într-un array.
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 - Clase (Classes): Zahăr sintactic peste moștenirea prototipică.
class Car { constructor(brand) { this.brand = brand; } drive() { console.log(`${this.brand} conduce.`); } } - Module: Instrument pentru organizarea codului cu
importșiexport.// module.js export const PI = 3.14; // main.js import { PI } from './module.js'; - Promise-uri (Promises): Simplifică lucrul cu cod asincron.
new Promise((resolve, reject) => { // Operație asincronă if (success) { resolve("Succes!"); } else { reject("Eroare!"); } }) .then(result => console.log(result)) .catch(error => console.error(error)); - for...of: Iterare peste obiecte iterabile.
const arr = [1, 2, 3]; for (const value of arr) { console.log(value); // 1, 2, 3 } - Set și Map: Noi structuri de date. Set pentru valori unice, Map pentru perechi cheie-valoare.