Các mảng Javascript thưa thớt

Các mảng Javascript thưa thớt

Một mảng thưa thớt là một cái trong đó các phần tử không có các chỉ mục liên tục bắt đầu tại 0. Thông thường thì,
đặc tính length của một mảng chỉ ra số các phần tử trong mảng. Nếu mảng là thưa thớt, giá trị của đặc tính length là
lớn hơn số phần tử. Các mảng thưa thớt có thể được tạo với Array() constructor hay đơn giản bằng cách gán vào một chỉ
mục mảng lớn hơn length mảng hiện tại.

let a = new Array(5); // No elements, but a.length is 5.
a = []; // Create an array with no elements and length = 0.
a[1000] = 0; // Assignment adds one element but sets length to 1001.

Chúng ta sẽ thấy sau này rằng bạn cũng có thể tạo một mảng thưa thớt với toán tử delete.
Các mảng cái là thưa thớt đầy đủ điển hình được thực thi trong một cách thức hiệu quả bộ nhớ hơn, chậm hơn so với
các mảng đậm đặc, và tìm kiếm các phần tử trong một mảng như vậy sẽ mất nhiều thời gian hơn so với tìm kiếm
đặc tính object thông thường.
Chú ý rằng khi bạn bỏ đi một giá trị trong một literal mảng (sử dụng các dấu phẩy lặp lại như trong [1,,3]), mảng
kết quả là thưa thớt, và các phần tử bỏ đi đơn giản không tồn tại:

let a1 = [,]; // This array has no elements and length 1
let a2 = [undefined]; // This array has one undefined element
0 in a1 // => false: a1 has no element with index 0
0 in a2 // => true: a2 has the undefined value at index 0

Hiểu các mảng thưa thớt là một phần quan trọng của hiểu bản chất thực sự của các mảng Javascript. Trong thực hành,
tuy nhiên, hầu hết các mảng Javascript bạn sẽ làm việc với sẽ không là thưa thớt. Và, nếu bạn phải làm việc với một
mảng thưa thớt, code của bạn sẽ có thể đối xử nó như nó sẽ đối xử một mảng không thưa thớt với các phần tử undefined.

Chia sẻ