Nhiều lần gọi IIFE trong JavaScript
Giả sử bạn được giao một nhiệm vụ phức tạp: tạo nhiều cặp dấu ngoặc gọi hàm, như thế này:
(function() {
// một đoạn mã nào đó
})()(); // nhiều cặp dấu ngoặc gọi hàm
Nếu suy nghĩ kỹ, sẽ thấy rõ ràng là trong trường hợp này, việc gọi hàm ngay lập tức phải trả về một hàm ẩn danh, như thế này:
(function() {
return function() {
console.log('!');
};
})()(); // sẽ in ra '!'
Hoàn thành đoạn mã sau đây để khi chạy
nó in ra '!':
(function() {
// một đoạn mã nào đó
})()()();
Hoàn thành đoạn mã sau đây để khi chạy nó in ra tổng của các số được truyền vào dưới dạng tham số:
(function() {
// một đoạn mã nào đó
})(1)(2);
Hoàn thành đoạn mã sau đây để khi chạy nó in ra tổng của các số được truyền vào dưới dạng tham số:
(function() {
// một đoạn mã nào đó
})(1)(2)(3);