Trong JavaScript, const
được giới thiệu từ phiên bản ECMAScript 2015 (ES6) để khai báo một biến không thể được gán lại. Khi sử dụng const
để khai báo một mảng, nó tạo ra một liên kết không thể thay đổi đến mảng đó. Dưới đây là một số điểm quan trọng về việc sử dụng const
với mảng:
Không Thể Gán Lại.
const cars = ["Saab", "Volvo", "BMW"];
cars = ["Toyota", "Volvo", "Audi"]; // Lỗi, không thể gán lại mảng
Mảng được khai báo với const
không thể được gán lại với một mảng mới.
Có Thể Thay Đổi Phần Tử.
const cars = ["Saab", "Volvo", "BMW"];
cars[0] = "Toyota"; // Có thể thay đổi giá trị của các phần tử trong mảng
cars.push("Audi"); // Có thể thêm phần tử mới vào mảng
Khai Báo Phải Có Giá Trị Ban Đầu.
const cars; // Lỗi, cần khởi tạo giá trị khi khai báo
cars = ["Saab", "Volvo", "BMW"];
Block Scope.
const cars = ["Saab", "Volvo", "BMW"];
{
const cars = ["Toyota", "Volvo", "BMW"];
// Mảng trong block này là khác biệt với mảng ở ngoài block
}
Không Thể Khai Báo Lại Trong Cùng Một Phạm Vi.
var cars = ["Volvo", "BMW"]; // Cho phép
const cars = ["Volvo", "BMW"]; // Lỗi, không thể khai báo lại cùng một tên trong cùng một phạm vi
Được Phép Khai Báo Lại Trong Block Khác.
const cars = ["Volvo", "BMW"]; // Cho phép
{
const cars = ["Volvo", "BMW"]; // Cho phép, vì nằm trong block khác
}
Tóm lại, const
trong trường hợp này không biểu thị mảng là hằng số mà chỉ là liên kết không thể thay đổi đến mảng. Mặc dù bạn không thể gán lại giá trị mới cho const
, bạn vẫn có thể thay đổi các phần tử của mảng đó.