Junior
Su kokiomis naujovėmis ES6 susipažinote?
sobes.tech AI
Atsakymas iš AI
- let, const, var: let ir const blokinioje srityje, var funkcijoje. const konstančioms, let kintamiesiems, kurie gali būti pervardyti.
- Rodyklės funkcijos (Arrow Functions): Sutrumpinta sintaksė funkcijų deklaravimui. Lexical
this. - Šabloninės literatūros (Template Literals): Leidžia įterpti išraiškas ir daugiaeilius tekstus.
const name = "World"; const greeting = `Hello, ${name}!`; // "Hello, World!" - Destruktūrizavimas (Destructuring Assignment): Patogus būdas išgauti reikšmes iš masyvų ir objektų.
const person = { firstName: "John", lastName: "Doe" }; const { firstName, lastName } = person; // firstName = "John", lastName = "Doe" - Sklaidos operatorius (...) ir Rest parametrai (...): Sklaida plėsti ir sujungti masyvus/objektus. Rest surenka likusius funkcijos argumentus į masyvą.
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 - Klasės (Classes): Sintaksinis cukrus prototipinio paveldėjimo viršuje.
class Car { constructor(brand) { this.brand = brand; } drive() { console.log(`${this.brand} is driving.`); } } - Moduliai (Modules): Kodo organizavimas naudojant
importirexport.// module.js export const PI = 3.14; // main.js import { PI } from './module.js'; - Pažadai (Promises): Supaprastina darbą su asinchroniniu kodu.
new Promise((resolve, reject) => { // Asinchroninė operacija if (success) { resolve("Sėkmė!"); } else { reject("Klaida!"); } }) .then(result => console.log(result)) .catch(error => console.error(error)); - for...of ciklas: Iteracija per iteruojamus objektus (masyvus, eilutes, Map, Set ir kt.).
const arr = [1, 2, 3]; for (const value of arr) { console.log(value); // 1, 2, 3 } - Set ir Map: Naujos duomenų struktūros. Set unikalioms reikšmėms, Map poroms rakto-reikšmės.