碎片时间学编程「34]:如何在 JavaScript 中克隆数组?

JavaScript 提供了很多克隆数组的方法,其中大多数在性能和结果方面都非常相似。以下是一些可用选项的简要介绍。

扩展运算符

ES6 引入了扩展运算符 ( ...),它提供了可能是创建数组的浅层克隆的最简单和最常用的方法。

let x=[1,2,3,4];

let y=[...x];

Array.from()

Array.from()有一个非常强大的 API,可以用于许多不同的事情,包括创建一个数组的副本。

let x=[1,2,3,4];

let y=Array.from(x);

Array.prototype.slice()

与扩展运算符类似,Array.prototype.slice()可用于创建数组的浅拷贝。

let x=[1,2,3,4];

let y=x.slice();

Array.prototype.map()

研究一个非正统的选项,Array.prototype.map()可用于将数组的每个元素映射到自身以创建一个新数组。

let x=[1,2,3,4];

let y=x.map(i=>i);

Array.prototype.filter()

类似地,Array.prototype.filter()可用于返回true的每个元素,从而生成一个包含所有原始数组元素的新数组。

let x=[1,2,3,4];

lety=x.filter(()=>true);

对象.assign()

最后,Object.assign()方法可以以与创建对象克隆数组完全相同的方式使用。

letx=[1,2,3,4]; 

lety=Object.assign([],x);

更多内容请访问 https://www.icoderoad.com

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容