Rond haakjes in IIFE in JavaScript

Meestal worden bij het onmiddellijk aanroepen van een functie in plaats van een plusteken ronde haakjes gebruikt, omdat deze manier van noteren als duidelijker wordt beschouwd:

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

Meestal worden de ronde haakjes voor het aanroepen van de functie aan de buitenkant geplaatst, zoals hier:

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

Bepaal, zonder de code uit te voeren, wat er in de console wordt uitgevoerd:

javascriptlet result = (function() {
  return '!';
}());

console.log(result);
Задание 2

Bepaal, zonder de code uit te voeren, wat er in de console wordt uitgevoerd:

javascriptlet result = (function() {
  return '!';
})();

console.log(result);
Задание 3

Bepaal, zonder de code uit te voeren, wat er in de console wordt uitgevoerd:

javascriptlet result = (function() {
  return '!';
});

console.log(result);
Задание 4

Bepaal, zonder de code uit te voeren, wat er in de console wordt uitgevoerd:

javascriptlet result = (function() {
  return '!';
});

console.log(result());