freeCodeCamp/curriculum/challenges/italian/02-javascript-algorithms-an.../object-oriented-programming/understand-the-immediately-...

1.7 KiB

id title challengeType forumTopicId dashedName
587d7db2367417b2b2512b8b Comprendere l'espressione di funzione invocata immediatamente (IIFE) 1 301328 understand-the-immediately-invoked-function-expression-iife

--description--

Un modello comune in JavaScript è quello di eseguire una funzione non appena viene dichiarata:

(function () {
  console.log("Chirp, chirp!");
})();

Questa è un'espressione di funzione anonima che viene eseguita subito, e produce Chirp, chirp! immediatamente.

Nota che la funzione non ha un nome e non è memorizzata in una variabile. Le due parentesi () alla fine dell'espressione della funzione fanno sì che essa sia immediatamente eseguita o invocata. Questo modello è conosciuto come una espressione funzione invocata immediatamente o IIFE.

--instructions--

Riscrivi la funzione makeNest e rimuovi la sua chiamata in modo che diventi un'espressione di funzione invocata immediatamente (IIFE).

--hints--

La funzione dovrebbe essere anonima.

assert(/\((function|\(\))(=>|\(\)){?/.test(code.replace(/\s/g, '')));

La tua funzione dovrebbe avere delle parentesi alla fine dell'espressione, in modo da chiamarla immediatamente.

assert(/\(.*(\)\(|\}\(\))\)/.test(code.replace(/[\s;]/g, '')));

--seed--

--seed-contents--

function makeNest() {
  console.log("A cozy nest is ready");
}

makeNest();

--solutions--

(function () {
  console.log("A cozy nest is ready");
})();

(function () {
  console.log("A cozy nest is ready");
}());

(() => {
  console.log("A cozy nest is ready");
})();

(() =>
  console.log("A cozy nest is ready")
)();