天天看點

JavaScript | 如何反轉(reverse)數組(array)【譯】

JavaScript | 如何反轉(reverse)數組(array)【譯】

在javascript如何反轉數組呢?如果想反轉一個數組,可以使用array的方法

reverse()

⏪。接下來提供了幾種方法,可以實作這個功能。你要思考的是你何時使用它而不是是否使用它?。

const originalArray = ['a','b', 'c', 'd'];
const newArray = originalArray.reverse();
console.log(newArray);
// ['d', 'c', 'b', 'a']
           

複制

修改了原數組

值得注意的是,

reverse()

會修改原數組。

const originalArray = ['a', 'b', 'c'];
const newArray = originalArray.reverse();

console.log(originalArray); // [ 'c', 'b', 'a' ]
console.log(newArray); // [ 'c', 'b', 'a' ]
           

複制

如何在不修改原數組的情況下反轉數組

讓我們一起看看在不修改原數組的情況下反轉數組的一些方法。?

使用

slice

reverse

const originalArray = ['a', 'b', 'c'];
const newArray = originalArray.slice().reverse();

console.log(originalArray); // ['a', 'b', 'c']
console.log(newArray); // [ 'c', 'b', 'a' ]
           

複制

使用

spread

reverse

const originalArray = ['a', 'b', 'c'];
const newArray = [...originalArray].reverse();

console.log(originalArray); // ['a', 'b', 'c']
console.log(newArray); // [ 'c', 'b', 'a' ]
           

複制

使用

reduce

spread

const originalArray = ['a', 'b', 'c'];
const newArray = originalArray.reduce((accumulator, value) => {
  return [value, ...accumulator]
}, []);

console.log(originalArray); // ['a', 'b', 'c']
console.log(newArray); // [ 'c', 'b', 'a' ]
           

複制

使用

reduceRight

spread

const originalArray = ['a', 'b', 'c'];
const newArray = originalArray.reduceRight((accumulator, value) => {
  console.log(value);
  return [...accumulator, value]
}, []);

console.log(originalArray); // ['a', 'b', 'c']
console.log(newArray); // [ 'c', 'b', 'a' ]
           

複制

使用

reduceRight

push

const originalArray = ['a', 'b', 'c'];
const newArray = originalArray.reduceRight((accumulator, value) => {
  accumulator.push(value);
  return accumulator;
}, []);

console.log(originalArray); // ['a', 'b', 'c']
console.log(newArray); // [ 'c', 'b', 'a' ]
           

複制

本文參與 騰訊雲自媒體分享計劃,歡迎熱愛寫作的你一起參與!

本文章分享自微信公衆号

白玉無冰

作者:lamyoung

原始發表時間:2019-09-12

如有侵權,請聯系 [email protected] 删除。