JavaScriptda funktsiyaning chap tarafdagi ifodasi
Quyidagi kodni ko'rib chiqaylik:
+function func() {
console.log('!');
}
Siz allaqachon bilasizki, bu funktsiya funktsional ifodadir, unga nom berilganiga qaramasdan (biz allaqachon aniqladikki, nomning mavjudligi umuman mezon emas). Bu ortiqcha belgini olib tashlasak - Function Declaration hosil bo'ladi:
function func() {
console.log('!');
}
Keling, + belgisini funktsiyadan oldingi
qatorga qo'yamiz - u yana Function Expression
bo'lib qoladi:
+
function func() {
console.log('!');
}
Endi ortiqcha belgidan keyin 1 raqamini
va nuqta-vergul qo'yamiz - bizning funktsiyamiz
Function Declaration bo'lib qoladi:
+1;
function func() {
console.log('!');
}
Nima uchun shunday: chunki birinchi qatorda bitta tugallangan buyruq yozilgan, nuqta-vergul bilan tugatilgan. Shuning uchun bu buyruq bizning funktsiyamizga hech qanday ta'sir ko'rsatmaydi.
Aslida nuqta-vergulni olib tashlash mumkin, chunki JavaScriptda u majburiy emas - funktsiya baribir Function Declaration bo'lib qoladi:
+1
function func() {
console.log('!');
}
Ammo 1 dan keyin yana bitta ortiqcha belgi
qo'shsak, funktsiya Function Expression bo'lib qoladi:
+1+
function func() {
console.log('!');
}
Nima uchun shunday: chunki birinchi qatorda tugallanmagan ifoda mavjud - ortiqcha belgi qo'yilgan va undan keyin hech narsa yo'q. Shuning uchun JavaScript interpretatori bu ortiqcha belgi pastdagi qatorga, ya'ni bizning funktsiyamizga tegishli deb hisoblaydi.
Agar birinchi qatorda tugallangan ifoda turgan bo'lsa, JavaScript avtomatik ravishda unga nuqta-vergul qo'yadi va bu ifoda hech qanday ta'sir ko'rsatmaydi bizning funktsiyamizga.
Taqdim etilgan funktsiya Function Declaration yoki Function Expression ekanligini aniqlang:
-
function func() {
console.log('!');
}
Taqdim etilgan funktsiya Function Declaration yoki Function Expression ekanligini aniqlang:
-1;
function func() {
console.log('!');
}
Taqdim etilgan funktsiya Function Declaration yoki Function Expression ekanligini aniqlang:
-1
function func() {
console.log('!');
}
Taqdim etilgan funktsiya Function Declaration yoki Function Expression ekanligini aniqlang:
1
function func() {
console.log('!');
}
Taqdim etilgan funktsiya Function Declaration yoki Function Expression ekanligini aniqlang:
-1-
function func() {
console.log('!');
}