语法
js
toReversed()
参数
无。
返回值
包含元素顺序颠倒的新数组。
描述
toReversed() 方法会颠倒调用数组对象的元素顺序,并返回一个新数组。
在稀疏数组上使用时,toReversed() 方法会将空位视为具有 undefined 值进行迭代。
toReversed() 方法是通用的。它只要求 this 值具有 length 属性和整数键属性。
示例
颠倒数组中的元素顺序
以下示例创建了一个名为 items 的数组,其中包含三个元素,然后创建了一个与 items 顺序相反的新数组。items 数组保持不变。
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]
在稀疏数组上使用 toReversed()
toReversed() 的返回值永远不是稀疏的。返回的数组中的空位会变成 undefined。
js
console.log([1, , 3].toReversed()); // [3, undefined, 1]
console.log([1, , 3, 4].toReversed()); // [4, 3, undefined, 1]
在非数组对象上调用 toReversed()
toReversed() 方法会读取 this 的 length 属性。然后,它会按降序访问 length - 1 到 0 之间的所有整数键属性,并将当前属性的值添加到要返回的数组末尾。
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
规范
| 规范 |
|---|
| ECMAScript® 2026 语言规范 # sec-array.prototype.toreversed |
浏览器兼容性
加载中…