Ի՞նչ ֆունկցիաներ կան JavaScript-ում։
sobes.tech AI
Պատասխան AI-ից
JavaScript- ում կան հետևյալ տեսակի ֆունկցիաներ.
-
Ֆունկցիայի հայտարարություններ (Function Declarations): Հիմնական սինտաքսը ֆունկցիա սահմանելու համար: Hoisted են կոմպիլյացիայի ժամանակ:
function sayHello() { // Ֆունկցիայի մարմինը console.log("Բարև!"); } -
Ֆունկցիայի արտահայտություններ (Function Expressions): Ֆունկցիան վերագրում է փոփոխականի: Չեն hoisted: Կարող են լինել անվանված կամ անանուն:
const greetUser = function(name) { // Ֆունկցիայի մարմինը console.log(`Բարև, ${name}!`); }; -
Նետային ֆունկցիաներ (Arrow Functions): Կարճ սինտաքս, ներկայացված է ES6-ում: Ունեն
this-ի առանձնահատկություններ:const add = (a, b) => a + b; -
Օբյեկտի մեթոդներ (Object Methods): Ֆունկցիաներ, որոնք սահմանված են որպես օբյեկտի հատկություններ:
const user = { name: "Իվան", sayName: function() { console.log(this.name); } }; -
Ցուցակային ֆունկցիաներ (Generator Functions): Ֆունկցիաներ, որոնք կարող են կանգ առնել և շարունակել
yield-ով: Վերադարձնում են ինտերատոր:function* counter() { let i = 0; while (true) { yield i++; } } -
Ասինխրոն ֆունկցիաներ (Async Functions): Ֆունկցիաներ, որոնք աշխատում են պրոմիսների հետ և թույլ են տալիս օգտագործել
await:async function fetchData() { const response = await fetch("https://api.example.com/data"); const data = await response.json(); return data; } -
Կառուցման ֆունկցիաներ (Constructor Functions): Ֆունկցիաներ, որոնք օգտագործվում են
new-ով օբյեկտներ ստեղծելու համար:function Person(name, age) { this.name = name; this.age = age; } const person1 = new Person("Պետրոս", 30); -
Հետադարձ կանչի ֆունկցիաներ (Callback Functions): Ֆունկցիաներ, որոնք փոխանցվում են որպես արգումենտներ այլ ֆունկցիաների:
function processArray(arr, callback) { for (let i = 0; i < arr.length; i++) { callback(arr[i]); } } processArray([1, 2, 3], function(item) { console.log(item * 2); }); -
IIFE - Թարմորեն հրավիրված ֆունկցիաներ (Immediately Invoked Function Expressions): Ֆունկցիաներ, որոնք կատարվում են անմիջապես իրենց սահմանումից հետո:
(function() { // Լոկալ կոդ const secret = "գաղտնիք"; console.log(secret); })();
Յուրաքանչյուր տեսակի ֆունկցիա ունի իր առանձնահատկությունները սինտաքսում, տարածքում (this) և օգտագործման դեպքերում։