JavaScript-da funksiyani joyida chaqirish

Hozir biz funksiyani uning e'lon qilingan joyida darhol chaqirishga imkon beradigan usulni ko'rib chiqamiz. Bunday konstruksiya Immediately Invoked Function Expression (IIFE) deb ataladi.

Keling, bir misolni ko'rib chiqaylik. Faraz qilaylik, bizda quyidagi funksional ifoda mavjud:

javascriptlet func = function() {
  console.log('!');
};

func(); // '!' chiqadi

Keling, endi funksiyamizni o'zgaruvchiga tayinlamaylik, balki uni darhol, "o'z joyida" chaqiraylik. Buning uchun funksiyadan keyin qavslarni qo'yamiz:

javascript+function() {
  console.log('!'); // '!' chiqadi
}();

Bunday holatda plus belgisining mavjudligi majburiy shart hisoblanadi, chunki usiz funksiya Function Declaration ga aylanadi, ularni joyida (hatto nomsiz ham) chaqirib bo'lmaydi. Albatta, plus o'rniga boshqa narsa ham bo'lishi mumkin, - asosiysi, bizning funksiyamiz funksional ifoda bo'lishi kerak.

Задание 1

Kodni ishlamasdan, konsolga nima chiqishini aniqlang:

javascript!function() {
  console.log('!');
}();
Задание 2

Kodni ishlamasdan, konsolga nima chiqishini aniqlang:

javascriptfunction() {
  console.log('!');
}();