Sau đây là đoạn mã trong đó một hàm trả về một hàm khác trong JavaScript -
Ví dụ
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style> body { font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; } .result { font-size: 18px; font-weight: 500; color: blueviolet; } </style> </head> <body> <h1>Function returning another function in JavaScript</h1> <div class="result"></div> <button class="Btn">CLICK HERE</button> <h3>Click on the above button to double the number</h3> <script> let BtnEle = document.querySelector(".Btn"); let resEle = document.querySelector(".result"); function test() { let b = 1; return function () { resEle.innerHTML = "Number = " + (b *= 2); }; } let returnFunc = test(); BtnEle.addEventListener("click", () => { returnFunc(); }); </script> </body> </html>
Đầu ra
Khi nhấp vào nút 'BẤM VÀO ĐÂY', số sẽ được nhân với 2 trên mỗi lần nhấp -