การเรียกใช้งาน IIFE หลายครั้งใน JavaScript

สมมติว่าคุณได้รับโจทย์ที่ซับซ้อน: ให้ทำ วงเล็บเรียกใช้งานหลายคู่ แบบนี้:

javascript(function() {
  // รหัสบางส่วน
})()(); // วงเล็บเรียกใช้หลายคู่

หากลองไตร่ตรองดู จะเห็นได้ชัดเจนว่า ในกรณีนี้ การเรียกใช้ฟังก์ชันทันที ควรคืนค่ากลับมาเป็นฟังก์ชันที่ไม่ระบุชื่อ แบบนี้:

javascript(function() {
  return function() {
    console.log('!');
  };
})()(); // แสดงผล '!'
Задание 1

โปรดเขียนโค้ดต่อไปนี้เพิ่มเติม เพื่อให้เมื่อรัน จะแสดงผล '!':

javascript(function() {
  // รหัสบางส่วน
})()()();
Задание 2

โปรดเขียนโค้ดต่อไปนี้เพิ่มเติม เพื่อให้เมื่อรัน จะแสดงผลรวมของตัวเลขที่ส่งผ่านเป็นพารามิเตอร์:

javascript(function() {
  // รหัสบางส่วน
})(1)(2);
Задание 3

โปรดเขียนโค้ดต่อไปนี้เพิ่มเติม เพื่อให้เมื่อรัน จะแสดงผลรวมของตัวเลขที่ส่งผ่านเป็นพารามิเตอร์:

javascript(function() {
  // รหัสบางส่วน
})(1)(2)(3);