反转数组
.reverse
用于反转数组内项的顺序。
.reverse
的示例:
[1, 2, 3, 4].reverse();
结果是:
[4, 3, 2, 1]
注意 :请注意
.reverse
(Array.prototype.reverse
)会将阵列反转到位。它将返回相同的数组,而不是返回反向副本。var arr1 = [11, 22, 33]; var arr2 = arr1.reverse(); console.log(arr2); // [33, 22, 11] console.log(arr1); // [33, 22, 11]
你还可以通过以下方式深入反转数组:
function deepReverse(arr) {
arr.reverse().forEach(elem => {
if(Array.isArray(elem)) {
deepReverse(elem);
}
});
return arr;
}
deepReverse 的示例:
var arr = [1, 2, 3, [1, 2, 3, ['a', 'b', 'c']]];
deepReverse(arr);
结果是:
arr // -> [[['c','b','a'], 3, 2, 1], 3, 2, 1]