Trung BìnhJavaScript iconJavaScript

Closure là gì? Cho ví dụ thực tế.

Closure là hàm 'nhớ' được biến từ lexical scope bên ngoài, ngay cả sau khi hàm ngoài đã return.

javascript
function makeCounter() {
  let count = 0;
  return () => ++count;
}
const c = makeCounter();
c(); // 1
c(); // 2

Hàm trả về vẫn truy cập count.

Ứng dụng thực tế: private variables (encapsulation), factory functions, event handlers giữ state, debounce/throttle, React hooks (useState bên trong dùng closure).

Xem toàn bộ JavaScript cùng filter theo level & chủ đề con.

Mở danh sách JavaScript