JavaScript'те IIFE'дегий тегерек каша

Адатта, функцияны ошол жерде чакырганда, плюстун ордуна тегерек кашалар колдонулат, анткени мындай жасоо ыкмасы көбүрөөк айкын деп эсептелет:

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

Көбүнчө, функцияны чакыруучу тегерек кашаларды сыртына коюшат, мындай:

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

Кодду иштетпей эле, консолго эмне басылаарын аныктаңыз:

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

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

Кодду иштетпей эле, консолго эмне басылаарын аныктаңыз:

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

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

Кодду иштетпей эле, консолго эмне басылаарын аныктаңыз:

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

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

Кодду иштетпей эле, консолго эмне басылаарын аныктаңыз:

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

console.log(result());