Khi lập trình bằng JavaScript, bạn có thể cần lấy mục cuối cùng trong một mảng. Trong hướng dẫn này, chúng ta sẽ xem xét hai cách khác nhau để thực hiện việc này.
Cách lấy mục cuối cùng trong một mảng JavaScript
Cách 1: Sử dụng định vị chỉ số
Sử dụng định vị chỉ mục nếu bạn biết độ dài của mảng.
Hãy tạo một mảng:
const animals = [‘cat’, ‘dog’, ‘horse’]
Ở đây chúng ta có thể thấy rằng mục cuối cùng trong mảng này là horse.
Để lấy mục cuối cùng, chúng ta có thể truy cập mục cuối cùng dựa trên chỉ mục của nó:
const finalElement = animals[2]
;
Các mảng JavaScrip không được lập chỉ mục. Đây là lý do tại sao chúng ta có thể truy cập horse
yếu tố với animals[2].
Nếu bạn không chắc chắn về ý nghĩa của zero-indexed, chúng ta sẽ xem xét nó sau trong hướng dẫn này.
Phương pháp lấy mục cuối cùng trong mảng này hoạt động nếu bạn biết độ dài của mảng.
Nhưng nếu bạn không biết độ dài của mảng thì sao? Mảng này, animals
, rất nhỏ. Nhưng bạn có thể có một mảng khác có hàng chục mục trong đó và bạn có thể không biết độ dài của nó.
Cách 2: Khi không biết độ dài mảng
Để lấy phần tử cuối cùng trong một mảng khi bạn không biết độ dài của mảng đó:
const lastItem = animals[animals.length - 1]
;
Các lastItem
biến bây giờ giữ giá trị của horse.
Hãy chia nhỏ những gì đang xảy ra trong dòng trên. Trước hết, hãy ghi nhật ký giao diện điều khiển animals.length:
console.log(animals.length);
Nếu bạn không quen thuộc với length
thuộc tính, nó trả về độ dài của mảng này. Điều này in ra 3
bởi vì có 3
các mục trong mảng.
Trước đó chúng ta đã biết rằng các mảng JavaScript không được lập chỉ mục. Điều này chỉ có nghĩa là trong các mảng JavaScript, bạn bắt đầu đếm từ 0 thay vì từ 1. Chúng ta có thể thấy điều này bằng cách nhìn vào animals
mảng. cat
đang ở chỉ mục ,
dog
đang ở chỉ mục 1
và horse
đang ở chỉ mục 2
.
Bạn có thể vẫn còn bối rối. Chúng tôi vừa học được rằng animals.length
sẽ cho chúng ta biết có bao nhiêu phần tử trong một mảng. Chúng tôi cũng đã học được rằng với các mảng JavaScript, chúng tôi bắt đầu đếm từ 0 thay vì một. Nhưng làm thế nào điều này giúp giải thích tại sao chúng ta có thể lấy mục cuối cùng trong mảng này bằng cách sử dụng animals[animals.length - 1]?
Hãy tạm thời tưởng tượng rằng các mảng JS là không phải không được lập chỉ mục và chúng tôi bắt đầu đếm từ 1, đó là cách chúng tôi thường đếm mọi thứ trong thế giới thực.
với animals
mảng, chúng ta có thể nhanh chóng bắt đầu đếm và nói rằng cat
mục đầu tiên, có chỉ số là 1, dog
có chỉ số 2
và horse
có chỉ số 3
. Cái nhìn sâu sắc quan trọng ở đây là, trong lập chỉ mục dựa trên một lần, chỉ mục của mục cuối cùng là độ dài của mảng. Nếu mảng có độ dài là 3, bạn biết rằng phần tử cuối cùng trong mảng có chỉ số là 3
. Cho nên animals[3]
sẽ đánh giá để horse
.
Tuy nhiên, các mảng JavaScript bắt đầu từ 0.
Vì vậy, nếu chúng ta muốn tìm ra chỉ mục của mục cuối cùng trong một mảng JavaScript, chúng ta có thể trừ 1 từ độ dài của mảng:
animals[animals.length - 1]
;
Bên trong dấu ngoặc, animals.length - 1
đánh giá để 2
. Bây giờ chúng ta có mục cuối cùng trong mảng.
Trong bài viết này, chúng ta đã học được hai phương pháp để lấy phần tử cuối cùng trong một mảng JavaScript.
Cảm ơn bạn đã đọc!
Nếu bạn thích bài đăng này, hãy tham gia câu lạc bộ viết mã của tôi, nơi chúng ta cùng nhau giải quyết các thử thách viết mã vào Chủ nhật hàng tuần và hỗ trợ lẫn nhau khi chúng ta học các công nghệ mới.
Nếu bạn có phản hồi hoặc câu hỏi về bài đăng này, hoặc tìm tôi trên Twitter @madisonkanna.