Junior
Ի՞նչ նորամուծություններ եք ծանոթ ES6-ում։
sobes.tech AI
Պատասխան AI-ից
- let, const, var: let և const բլոկային տեսանելիության համար, var ֆունկցիոնալ։ const համար հաստատուններ, let՝ փոփոխականներ, որոնք կարող են վերանվանվել։
- Աղեղային ֆունկցիաներ (Arrow Functions): Կրճատված սինտաքսիս ֆունկցիաներ հայտարարելու համար։ Լեքսիկոն
this։ - Թեմատիկ տեքստեր (Template Literals): Позволяют встраивать выражения и многострочные строки.
const name = "World"; const greeting = `Hello, ${name}!`; // "Hello, World!" - Դեստրակտուրիզացիա (Destructuring Assignment): Հարմար միջոց արժեքներ հանելու համար զանգվածներից և օբյեկտներից։
const person = { firstName: "John", lastName: "Doe" }; const { firstName, lastName } = person; // firstName = "John", lastName = "Doe" - Spread-оператор (...) և Rest պարամետրեր (...): Spread՝ զանգվածների և օբյեկտների ընդլայնում և միավորում։ Rest՝ ֆունկցիայի մնացած արգումենտները հավաքելու համար։
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): Սինտաքսիկ շաքար՝ պրոտոտիպային ժառանգության վրա։
class Car { constructor(brand) { this.brand = brand; } drive() { console.log(`${this.brand} is driving.`); } } - Մոդուլներ (Modules): Կոդի կազմակերպման միջոց
importևexport-ի միջոցով։// module.js export const PI = 3.14; // main.js import { PI } from './module.js'; - Պրոմիսներ (Promises): Օգնում են աշխատել ասինխրոն կոդով։
new Promise((resolve, reject) => { // Ասինխրոն գործողություն if (success) { resolve("Հաջողություն!"); } else { reject("Սխալ!"); } }) .then(result => console.log(result)) .catch(error => console.error(error)); - for...of ցիկլ: Իտերատիվ անցում դեպի ինթերատորային օբյեկտներ (մասիվներ, տողեր, Map, Set, և այլն):
const arr = [1, 2, 3]; for (const value of arr) { console.log(value); // 1, 2, 3 } - Set և Map: Նոր տվյալների կառուցվածքներ։ Set՝ եզակի արժեքների համար, Map՝ բանալին-արժեք զույգերի համար։