Mbylljet dhe Thirrja e Funksionit në Vend në JavaScript
Siç e dini tashmë, mund të thirrni një funksion anonim në vend dhe t'i caktoni rezultatin e punës ndonjë ndryshoreje:
let result = function() {
return '!';
}();
console.log(result); // do të shfaqë '!'
Shpesh funksionin që thirret në vend, në raste të tilla e vendosin në kllapa të rrumbullakëta, edhe pse kjo nuk është e nevojshme. Kjo bëhet në mënyrë që menjëherë të duket qartë se funksioni thirret në vend:
let result = (function() {
return '!';
})();
console.log(result); // do të shfaqë '!'
Le të bëjmë që rezultati i funksionit të thirrur në vend të jetë një funksion anonim:
let func = (function() {
return function() {
console.log('!');
}
})();
func(); // do të shfaqë '!'
Le ta bëjmë që funksioni i kthyer
të ruajë në mbyllje ndryshoren num:
let func = (function() {
let num = 1;
return function() {
console.log(num);
}
})();
Nëse shtoni edhe num++, atëherë funksioni
func do të bëhet një numërues i gatshëm:
let func = (function() {
let num = 1;
return function() {
console.log(num);
num++;
}
})();
func(); // do të shfaqë 1
func(); // do të shfaqë 2
func(); // do të shfaqë 3
func(); // do të shfaqë 4
func(); // do të shfaqë 5
Pa parë në kodin tim, realizoni vetë një numërues të ngjashëm.
Modifikoni funksionimin e numëruesit në mënyrë që
ai të numërojë deri në 5, dhe pastaj numërimi të fillojë
përsëri nga fillimi.