Cách đảo ngược một mảng JavaScript

Tôi cần phải đảo ngược một mảng JavaScript, và đây là những gì tôi đã làm.

Cho một mảnglist:

const list = [1, 2, 3, 4, 5]

Cách dễ nhất và trực quan nhất là gọireverse()phương thức của một mảng.

Phương thức này thay đổi mảng ban đầu, vì vậy tôi có thể khai báolistnhư một const, bởi vì tôi không cần phải gán lại kết quả của việc gọilist.reverse()với nó:

const list = [1, 2, 3, 4, 5]
list.reverse()

//list is [ 5, 4, 3, 2, 1 ]

Bạn có thể ghép nối phương thức này với toán tử spread để sao chép mảng ban đầu trước tiên, sau đó đảo ngược nó, do đó, mảng ban đầu được giữ nguyên:

const list = [1, 2, 3, 4, 5]
const reversedList = [...list].reverse()

//list is [ 1, 2, 3, 4, 5 ] //reversedList is [ 5, 4, 3, 2, 1 ]

Một cách khác là sử dụngslice()mà không chuyển đối số:

const list = [1, 2, 3, 4, 5]
const reversedList = list.slice().reverse()

//list is [ 1, 2, 3, 4, 5 ] //reversedList is [ 5, 4, 3, 2, 1 ]

nhưng tôi thấy toán tử spread trực quan hơnslice().

Tải xuống miễn phí của tôiSổ tay dành cho Người mới bắt đầu JavaScript


Các hướng dẫn js khác: