Функцияларды түзүүнүн кандай жолдорун билесиз?
sobes.tech AI
AIден жооп
JavaScriptте функцияларды түзүүнүн бир нече жолдору бар, ар бири өзүнүн өзгөчөлүктөрү менен:
-
Функция декларациялары (Function Declarations): Классикалык ыкма функция түзүү. Алар (hoisted) жогору көтөрүлүп, көрүү чөйрөсүндө, аларды декларациялоодон мурун чакырууга мүмкүндүк берет.
// function аркылуу функцияны декларациялоо function greet(name) { return "Салам, " + name + "!"; } -
Функциялык экспрессиялар (Function Expressions): Функция экспрессиянын бир бөлүгү катары түзүлүп, өзгөрмөгө берилет. Алар (not hoisted) ошол эле деңгээлде көтөрүлбөйт, функция декларацияларына караганда.
// Функциялык экспрессия const greet = function(name) { return "Салам, " + name + "!"; }; -
Жол функциялары (Arrow Functions): Кыска синтаксис формасы функциялык экспрессиялар үчүн. Алар классикалык функциялардан айырмаланып,
thisжана өз аргументтерин (arguments) жокко чыгарат.// Жол функциясы const greet = (name) => { return "Салам, " + name + "!"; }; // Жол функциясынын кыска формасы, жекече кайтаруу менен const greetShort = (name) => "Салам, " + name + "!"; -
Куруучу функциялар (Constructor Functions): Объекттер түзүү үчүн колдонулат.
newачкыч сөзү менен чакырылат.// Куруучу функция function Person(name, age) { this.name = name; this.age = age; } // Куруучу аркылуу объекттин үлгүсүн түзүү const person1 = new Person("Алексей", 30); -
Класс методдору (Class Methods): Класстарда (прототипке негизделген мураска үстөмдүк кылган синтаксис) функциялар метод катары аныкталат.
// Метод менен класс аныктоо class Greeter { greet(name) { return "Салам, " + name + "!"; } } // Класс үлгүсүн түзүү жана методду чакыруу const greeter = new Greeter(); const message = greeter.greet("Дүйнө"); -
IIFE (Тез арада чакырылган функциялар): Функциялык экспрессия, ал түзүлгөндөн кийин дароо аткарылат. Локалдуу көрүнүш чөйрөсүн түзүү үчүн колдонулат:
// IIFE (function() { // IIFE ичиндеги код console.log("Бул функция дароо аткарылат!"); })();
Ар бир ыкма өзүнүн артыкчылыктары жана кемчиликтери бар, жана тандоо конкреттүү тапшырмага жана контекстке көз каранды.