Đối tượng Array lưu trữ nhiều giá trị trong một biến. Dưới đây là các thuộc tính chính:
Thuộc tính của Array
| STT | Thuộc tính | Mô tả |
|---|---|---|
| 1 | constructor | Trả về hàm Array tạo ra đối tượng. |
| 2 | length | Số lượng phần tử (unsigned 32-bit integer). Có thể gán để cắt/bổ sung mảng. |
| 3 | prototype | Cho phép thêm phương thức/thuộc tính cho tất cả array instance. |
| 4 | [@@species] | Constructor dùng cho phương thức trả về array mới (map, filter...). |
| 5 | [@@unscopables] | Các property bị loại trừ trong with statement (legacy). |
Lưu ý: index và input chỉ xuất hiện trên array tạo từ RegExp.match() / String.matchAll(), không phải array thường.
Ví dụ: prototype — mở rộng Array
<!DOCTYPE html>
<html>
<head>
<script>
// Thêm method first() cho TẤT CẢ array
Array.prototype.first = function() {
return this[0];
};
</script>
</head>
<body>
<script>
var colors = ["Red", "Green", "Blue"];
document.write("Phần tử đầu: " + colors.first()); // "Red"
</script>
</body>
</html>
Ví dụ: length — cắt mảng
var arr = [1, 2, 3, 4, 5]; arr.length = 3; // [1, 2, 3] arr.length = 0; // [] (xóa toàn bộ)
Khuyến nghị:
- Không nên sửa
Array.prototypetrong production (gây conflict, khó debug). - Dùng utility functions hoặc wrapper class thay thế.
lengthlà thuộc tính quan trọng nhất — hiểu rõ hành vi của nó.