反转数组

.reverse 用于反转数组内项的顺序。

.reverse 的示例:

[1, 2, 3, 4].reverse();

结果是:

[4, 3, 2, 1]

注意 :请注意 .reverseArray.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]