如何在 JavaScript 中克隆数组?

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

目前成都创新互联公司已为上千家的企业提供了网站建设、域名、网络空间、网站托管运营、企业网站设计、托克逊网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

展开运算符

ES6 引入了展开运算符(...),它可能是对数组进行浅拷贝的最简单和最常见的方法。

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

Array.from()

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

 
 
 
  1. let x = [1, 2, 3, 4]; 
  2. let y = Array.from(x); 

Array.prototype.slice()

与展开运算符类似,Array.prototype.slice() 可用于对数组进行浅拷贝。

 
 
 
  1. let x = [1, 2, 3, 4]; 
  2. let y = x.slice(); 

Array.prototype.map()

这是一个非传统的方法,可以用 Array.prototype.map() 通过将数组的每个元素映射到自身,来创建新的数组。

 
 
 
  1. let x = [1, 2, 3, 4]; 
  2. let y = x.map(i => i); 

Array.prototype.filter()

同样也可以用 Array.prototype.filter() 返回每个元素的 true 值,从而产生一个包含所有原始数组元素的新数组。

 
 
 
  1. let x = [1, 2, 3, 4]; 
  2. let y = x.filter(() => true); 

Object.assign()

最后可以通过 Object.assign(),使用方式和克隆对象完全相同,同样适用于克隆数组。

 
 
 
  1. let x = [1, 2, 3, 4]; 
  2. let y = Object.assign([], x); 

网页标题:如何在 JavaScript 中克隆数组?
本文地址:http://www.shufengxianlan.com/qtweb/news36/292386.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联