疯狂的技术宅

以前出于工作目的,编写和翻译了大量的技术文章,以前端为主,删掉了过时的、毫无营养的内容,留下的都是精华。


  • 首页

  • 分类

  • 标签

  • 归档

  • 关于本站

  • 回到主站

  • 搜索

如何在JavaScript中克隆数组?

时间: 2021-02-17 分类: 前端技术   字数: 368 字 阅读: 1分钟
标签: #JavaScript# #Array# #克隆数组#

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];
let y = x.filter(() => true);

Object.assign()

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

let x = [1, 2, 3, 4];
let y = Object.assign([], x);
标签: #JavaScript# #Array# #克隆数组#

标题:如何在JavaScript中克隆数组?

链接:https://fe-tech.viewnode.com/post/202102/17/

作者:疯狂的技术宅

声明: 本博客文章除特别声明外,均采用 CC BY-NC-ND 4.0 国际许可协议( 知识共享署名-非商业性使用-禁止演绎 4.0),转载请注明出处!

用 JavaScript 检测大写锁定键的状态
JavaScript console.log() 技巧与窍门
  • 文章目录
  • 站点概览
疯狂的技术宅

疯狂的技术宅

退休程序员,硬件发烧友,人工智能爱好者。写写代码喝喝茶,晒晒太阳带带娃。

457 日志
8 分类
583 标签
GitHub
友情链接
  • viewnode
  • mofish
标签云
  • Javascript 172
  • Node.Js 62
  • Vue 36
  • Typescript 28
  • 实战项目 28
  • 面试 21
  • React 20
  • Css 17
  • 面试题 16
  • 教程 13
  • Promise 12
  • Chrome 9
  • Debug 9
  • 调试 9
  • 资源 9
  • Deno 8
  • Dom 8
  • 杂谈 8
  • 正则表达式 8
  • 测试 8
© 2018 - 2022 疯狂的技术宅 All Rights Reserved
Powered by - Hugo v0.99.0 / Theme by - NexT
Storage by 俺的服务器 / 冀ICP备2022010157号
0%