Tofauti katika Kutangaza Kazi
Njia zote mbili za kutangaza kazi ni sawa, lakini kuna tofauti kubwa: kazi zilizotangazwa kama Tamko la Kazi (Function Declaration), zitapatikana, hata kwa kuzirejelea kabla ya kutangazwa.
Tazama mfano:
// Tafuta kazi kabla ya kutangazwa kwake:
func(); //itaonyesha '!'
function func() {
console.log('!');
}
Lakini misemo ya kazi (Functional Expressions) huundwa wakati msimbo unapotekelezwa na haipatikani hapo juu. Kwa hivyo msimbo kama huu utatoa hitilafu:
func(); //hitilafu, kazi kama hiyo haipo bado!
let func = function() {
console.log('!');
};
Unda kazi kama Tamko la Kazi (Function Declaration). Hakikisha kuwa itapatikana kabla ya mahali pa kutangazwa kwake.
Unda kazi kama Mfumo wa Kazi (Function Expression). Hakikisha kuwa haitapatikana kabla ya mahali pa kutangazwa kwake.