JavaScript-de ýerlikli funksiýa çagyryşy

Indi biz funksiýany has döredilýän ýerinde çagyrmaga mümkinçilik berýän usuly gözden geçireris. Beýle konstruksiýa Immediately Invoked Function Expression (IIFE) diýilýär.

Geliň bir mysal görüň. Bizde şeýle bir funksional ifade bolsun:

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

func(); // '!' görkezer

Indi geliň funksiýamyzy üýtgeýjä belläp durmadyk, eýsem ony derrew, "ýerinde" çagyraly. Munuň üçin funksiýadan soň aýlawly möýşürt goýýarys:

javascript+function() {
  console.log('!'); // '!' görkezer
}();

Bu ýagdaýda "+" nyşanynyň bolmagy hökmany şertdir, sebäbi onsuz funksiýa Function Declaration bolup biler, olary ýerinde (hem-de ady bolmazdan) çagyryp bolmaýar. Elbetde, "+" ýerine islenen zat bolup biler, - esasy, bizim funksiýamyzyň funksional ifade bolmagydyr.

Задание 1

Kody işletmezden, konsol näme görkezerligini kesgitläň:

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

Kody işletmezden, konsol näme görkezerligini kesgitläň:

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