Junior
S akými novinkami v ES6 ste oboznámený?
sobes.tech AI
Odpoveď od AI
- let, const, var: let a const pre blokové oblasti, var pre funkčnú. const pre konštanty, let pre premenné, ktoré sa môžu premenovať.
- Šípové funkcie (Arrow Functions): Skrátená syntax na deklarovanie funkcií. Lexical
this. - Šablónové literály (Template Literals): Umožňujú vkladať výrazy a viacriadkové reťazce.
const name = "World"; const greeting = `Hello, ${name}!`; // "Hello, World!" - Destrukturalizácia (Destructuring Assignment): Pohodlný spôsob na získanie hodnôt z polí a objektov.
const person = { firstName: "John", lastName: "Doe" }; const { firstName, lastName } = person; // firstName = "John", lastName = "Doe" - Spread operátor (...) a Rest parametre (...): Spread na rozšírenie a spojenie polí/objektov. Rest na zber zvyšných argumentov funkcie do poľa.
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 - Triedy (Classes): Syntax sugar nad prototypovým dedičstvom.
class Car { constructor(brand) { this.brand = brand; } drive() { console.log(`${this.brand} is driving.`); } } - Moduly (Modules): Nástroj na organizáciu kódu pomocou
importaexport.// module.js export const PI = 3.14; // main.js import { PI } from './module.js'; - Promises (Sľuby): Zjednodušujú prácu s asynchrónnym kódom.
new Promise((resolve, reject) => { // Asynchrónna operácia if (success) { resolve("Úspech!"); } else { reject("Chyba!"); } }) .then(result => console.log(result)) .catch(error => console.error(error)); - for...of cyklus: Iterácia cez iterovateľné objekty (pole, reťazce, Map, Set, atď.).
const arr = [1, 2, 3]; for (const value of arr) { console.log(value); // 1, 2, 3 } - Set a Map: Nové dátové štruktúry. Set pre unikátne hodnoty, Map pre páry kľúč-hodnota.