JavaScriptda "First class function" tushunchasi
Rajabov DostonAssalomu aleykum hammaga. Ko'rib turganingizday bugungi maqola orqali biz "First class function" haqida gaplashamiz.
Keling dastlab oddiy funksiya yozilishini ko'rib chiqamiz:
function sayHello(){
console.log('Hello world');
}
sayHello(); //Hello world
Funksiyalar faqatgina shu holatda ishlatilmaydi.Biz funksiyalarni boshqa funksiyalarga argument sifatida uzatishimiz, boshqa funktsiyalardan qiymatlar sifatida qaytarishimiz, boshqa funksiya ichida return qilib qaytarishimiz ham mumkun.
Mana shu kabi funksiyalarga "First class functions" deyiladi.
1.Funktsiyalarni argument sifatida uzatish
function greet(name) {
return "Hello, " + name + "!";
}
function saySomething(greetingFunction, name) {
return greetingFunction(name);
}
console.log(saySomething(greet, "John")); // Hello, John!
Ushbu misolda greet(name) funksiya mavjud va u name ni qaytaradi. Ikkinchi funksiya saySomething(greetingFunction, name) esa argument sifatida greetingFunction ni va oz'garuvchi sifatida name ni qabul qiladi va uni qaytaradi. Biz saySomething(greet, "John") funksiyasini ishga tushiramiz va unga greet funksiyasini va 'John' qiymatini berib yuboramiz. Natijasini esa yuqorida ko'rib turibsiz.
Aynan shu yerda "first class function" tushunchasi ishlaydi.
2. Funksiyani boshqa bir funksiya ichida return qilish
function multiplier(factor) {
return function(x) {
return x * factor;
};
}
const double = multiplier(2);
console.log(double(5)); // 10
Bu holatda multiplier(2) funksiyasini ishga tushirish orqali natijasini double ga o'zlashtiryapmiz va double() ni ishga tushirish orqali asosiy funksiya ichida return qilingan ikkinchi funksiyani ishga tushiryapmiz.
3. Funksiyani o'zgaruvchiga berib yuborish
const square = function(x) {
return x * x;
};
console.log(square(4)); // 16
Ushbu maqola orqali "first class functions" nima ekanligini ham bilib oldik.
Maqolada yo'l qo'yilgan imloviy xatolarga e'tibor bermaysiz degan umiddaman 😉😉
Bizning manzillar:
Youtube:link
Telegram:link