JavaScript-da Yopilishlar va Funksiyani Joyida Chaqirish
Siz allaqachon bilasizki, anonim funksiyani joyida chaqirish va uning natijasini qandaydir o'zgaruvchiga tayinlash mumkin:
let result = function() {
return '!';
}();
console.log(result); // '!' chiqadi
Ko'pincha, joyida chaqiriladigan funksiyani shunday holatda dumaloq qavs ichiga oladilar, garchi buning hojati yo'q. Buning maqsadi - funksiya joyida chaqirilayotgani darhol ko'rinishi uchun:
let result = (function() {
return '!';
})();
console.log(result); // '!' chiqadi
Endi, joyida chaqirilgan funksiya natijasi anonim funksiya bo'lsin:
let func = (function() {
return function() {
console.log('!');
}
})();
func(); // '!' chiqadi
Keling, qaytariladigan funksiya
num o'zgaruvchisini yopilishda saqlasin:
let func = (function() {
let num = 1;
return function() {
console.log(num);
}
})();
Agar yana num++ qo'shilsa, func
funksiyasi tayyor hisoblagichga aylanadi:
let func = (function() {
let num = 1;
return function() {
console.log(num);
num++;
}
})();
func(); // 1 chiqadi
func(); // 2 chiqadi
func(); // 3 chiqadi
func(); // 4 chiqadi
func(); // 5 chiqadi
Mening kodimga qaramay, o'zingiz xuddi shunday hisoblagichni amalga oshiring.
Hisoblagichning ishlashini shunday o'zgartiringki,
u 5 gacha sanasin, keyin esa hisoblash
boshidan boshlansin.