Có bất kỳ câu hỏi nào?

Hãy tìm kiếm kết quả bên dưới để được giải đáp, trên mọi lĩnh vực

Block-scope là gì? Đặc điểm và Ví dụ cụ thể

Block-scope trong JavaScript là một khái niệm quan trọng liên quan đến phạm vi hoạt động của biến. Một biến có block-scope nghĩa là nó chỉ có thể được truy cập trong khối lệnh (block) mà nó được khai báo.

Đặc Điểm của Block-scope

  • Block: Một block trong JavaScript thường được định nghĩa bởi cặp ngoặc nhọn {}. Điều này bao gồm các cấu trúc như if, for, while, v.v.
  • letconst: Các biến được khai báo bằng let hoặc const có block-scope. Điều này nghĩa là chúng chỉ tồn tại và có thể truy cập được trong block mà chúng được khai báo.

So sánh với Function-scope

  • Trái ngược với block-scope, var trong JavaScript có function-scope, tức là biến var chỉ được hạn chế trong phạm vi của một hàm mà không bị hạn chế bởi các blocks nhỏ hơn như loops hay conditional blocks.

Ví dụ Cụ thể

if (true) {
    let x = 5;
    console.log(x); // 5
}
console.log(x); // ReferenceError: x is not defined

for (let i = 0; i < 3; i++) {
    console.log(i); // 0, 1, 2
}
console.log(i); // ReferenceError: i is not defined

Trong ví dụ trên:

  • Biến x được khai báo bằng let trong một block if. Nó có thể được truy cập trong block này nhưng không thể truy cập từ bên ngoài block.
  • Tương tự, biến i được khai báo trong vòng lặp for và chỉ có thể truy cập được trong vòng lặp đó.

Block-scope giúp lập trình viên quản lý và kiểm soát phạm vi của biến một cách chặt chẽ hơn, giảm thiểu nguy cơ xung đột và lỗi do truy cập biến không chính xác từ bên ngoài phạm vi của chúng.

Tags: