Kazi kama Tofauti katika JavaScript
Basi, katika somo lililopita tuligundua, kwamba tukilenga kazi bila mabano ya duara, tunapata msimbo wake wa asili.
Kweli yote ni ya kuvutia zaidi. Katika JavaScript, tofauti na lugha zingine, kazi ni thamani sawa za tofauti, kama nambari, mistari na safu.
Wacha tuangalie kwa mfano. Hebu tuseme
tuna, kwa mfano, kazi func:
function func() {
console.log('!');
}
Kweli haina kazi func.
Tuna tofauti func, inayohifadhi
msimbo wa asili wa kazi.
Tunaweza, kwa mfano, kufuta tofauti
func kwa kitu kingine, kwa mfano,
mstari. Katika kesi hii, kazi func
haitakuwa tena kazi, bali itakuwa mstari.
Angalia kwa mfano:
function func() {
console.log('!');
}
func(); // itatoa '!'
func = 'string'; // tutafuta tofauti func
console.log(func); // itatoa 'string'
Fanya kazi func, ambayo itakuwa
kurudisha kupitia return mstari wowote.
Toa matokeo ya kazi func
kwenye koni.
Toa msimbo wa asili wa kazi func
kwenye koni.
Andika kwenye tofauti func nambari 123,
kwa kufanya hivyo kufuta kazi kutoka kwenye tofauti hii.
Toa thamani mpya ya tofauti func
kwenye koni.