"use strict"; là một chỉ thị (directive) trong JavaScript được sử dụng để kích hoạt chế độ nghiêm ngặt (strict mode) của JavaScript. Chế độ này giúp bắt lỗi và hạn chế một số hành vi có thể gây ra lỗi khó phát hiện. Dưới đây là một số điểm quan trọng về "use strict";:
Phạm vi của chỉ thị:
Nếu bạn đặt "use strict"; ở đầu một tệp JavaScript, toàn bộ tệp sẽ được chạy trong chế độ nghiêm ngặt.
Nếu bạn đặt "use strict"; bên trong một hàm, chỉ hàm đó sẽ chạy trong chế độ nghiêm ngặt.
Lợi ích của chế độ nghiêm ngặt:
Giúp phát hiện lỗi sớm: Chế độ nghiêm ngặt báo lỗi ngay khi gặp các lỗi thông thường, giúp phát hiện và sửa lỗi dễ dàng hơn.
Ngăn chặn sử dụng biến toàn cục: Trong chế độ nghiêm ngặt, việc gán giá trị cho biến chưa được khai báo sẽ gây ra lỗi, ngăn chặn việc vô tình tạo ra biến toàn cục.
Hạn chế sử dụng từ khóa tương lai: Một số từ khóa được dự trữ cho các tính năng tương lai của JavaScript sẽ gây lỗi trong chế độ nghiêm ngặt nếu được sử dụng như tên biến hoặc hàm.
Cải thiện hiệu suất: Một số trình duyệt có thể tối ưu hóa mã JavaScript chạy trong chế độ nghiêm ngặt nhanh hơn do có ít tính năng phức tạp cần xử lý.
Ví dụ:
"use strict";
// Ví dụ 1: Toàn bộ tệp sẽ chạy trong chế độ nghiêm ngặt
x = 10; // Sẽ gây lỗi vì x chưa được khai báo
function myFunction() {
"use strict";
y = 20; // Sẽ gây lỗi vì y chưa được khai báo
}
// Ví dụ 2: Chỉ hàm sẽ chạy trong chế độ nghiêm ngặt
function myStrictFunction() {
"use strict";
z = 30; // Sẽ gây lỗi vì z chưa được khai báo
}
function myNonStrictFunction() {
a = 40; // Không gây lỗi vì không trong chế độ nghiêm ngặt
}
Sử dụng "use strict"; giúp bạn viết mã an toàn hơn và tránh những lỗi phổ biến trong JavaScript.