Array.prototype.toReversed()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2023.

Phương thức toReversed() của các đối tượng Array là phiên bản sao chép của phương thức reverse(). Nó trả về một mảng mới với các phần tử theo thứ tự ngược lại.

Cú pháp

js
toReversed()

Tham số

Không có.

Giá trị trả về

Một mảng mới chứa các phần tử theo thứ tự ngược lại.

Mô tả

Phương thức toReversed() đảo ngược các phần tử của đối tượng mảng đang gọi và trả về một mảng mới.

Khi được dùng trên mảng thưa, phương thức toReversed() lặp qua các vị trí trống như thể chúng có giá trị undefined.

Phương thức toReversed()phương thức tổng quát. Nó chỉ yêu cầu giá trị this có thuộc tính length và các thuộc tính có khóa là số nguyên.

Ví dụ

Đảo ngược các phần tử trong một mảng

Ví dụ sau tạo mảng items chứa ba phần tử, sau đó tạo một mảng mới là mảng ngược của items. Mảng items vẫn không thay đổi.

js
const items = [1, 2, 3];
console.log(items); // [1, 2, 3]

const reversedItems = items.toReversed();
console.log(reversedItems); // [3, 2, 1]
console.log(items); // [1, 2, 3]

Sử dụng toReversed() trên mảng thưa

Giá trị trả về của toReversed() không bao giờ thưa. Các vị trí trống trở thành undefined trong mảng được trả về.

js
console.log([1, , 3].toReversed()); // [3, undefined, 1]
console.log([1, , 3, 4].toReversed()); // [4, 3, undefined, 1]

Gọi toReversed() trên đối tượng không phải mảng

Phương thức toReversed() đọc thuộc tính length của this. Sau đó nó ghé thăm từng thuộc tính có khóa nguyên từ length - 1 đến 0 theo thứ tự giảm dần, thêm giá trị của thuộc tính hiện tại vào cuối mảng sẽ được trả về.

js
const arrayLike = {
  length: 3,
  unrelated: "foo",
  2: 4,
};
console.log(Array.prototype.toReversed.call(arrayLike));
// [4, undefined, undefined]
// The '0' and '1' indices are not present so they become undefined

Thông số kỹ thuật

Specification
ECMAScript® 2027 Language Specification
# sec-array.prototype.toreversed

Khả năng tương thích với trình duyệt

Xem thêm