Phạm vi sử dụng biến trong Apps Script

Hướng dẫn chi tiết về phạm vi sử dụng biến trong Apps Script

Trong Apps Script (giống JavaScript), phạm vi sử dụng biến (scope) nghĩa là nơi mà biến đó có thể được truy cập hoặc sử dụng. Có 3 loại phạm vi biến chính:

1. Phạm vi hàm (Function Scope) – dùng với var

    Biến khai báo bằng var chỉ dùng được bên trong hàm chứa nó.
    Nếu khai báo var trong khối lệnh như if, for,... thì vẫn thuộc phạm vi hàm, không phải khối.

🔍 Ví dụ:

function test() {
  if (true) {
    var x = 5;
  }
  Logger.log(x); // ✅ In ra 5
}

2. Phạm vi khối (Block Scope) – dùng với let, const

    Biến khai báo bằng let hoặc const chỉ dùng được trong khối {} nơi nó được khai báo.

🔍 Ví dụ:

function test() {
  if (true) {
    let y = 10;
  }
  Logger.log(y); // ❌ Lỗi: y is not defined
}

3. Phạm vi toàn cục (Global Scope)

    Biến được khai báo bên ngoài mọi hàm sẽ có phạm vi toàn cục.
    Có thể truy cập từ bất kỳ hàm nào trong tập lệnh.

🔍 Ví dụ:

var globalVar = "Xin chào";

function sayHello() {
  Logger.log(globalVar); // ✅ In ra "Xin chào"
}

4. Phân biệt phạm vi sử dụng biến var, let trong Apps Script

Từ khóa Có phạm vi khối Có phạm vi hàm Có thể gán lại Có thể khai báo lại
var
let ❌ trong cùng phạm vi
const

 

Bài viết liên quan:

Hướng dẫn chi tiết về phạm vi sử dụng biến trong Apps Script