【译】Array与Set的异同及使用场景

原文链接: 戳这里
PS:原文只介绍了Array和Set的一些简单操作,详细API放在文章底部。

Array和Set是什么

每一个使用JavaScript编程的人都应该对Array非常熟悉。 通常,我们可以这样形容它:数组是表示一种储存在连续空间中的结构类型(内容可以为number,object等)。 例如:[1, 2, 3, 4, 5]
(原文这里说法存在歧义,具体数组在内存中的存储方式可以参考链接一链接二

而Set更像是一种抽象的数据类型。它只包含不同的元素/对象,不需要连续分配存储空间。 例如:{1, 2, 3}

它们之间最大的差别就是Array中的元素是可以重复的,而Set中的元素不可重复 。除此之外,Array被认为是一种索引集合,而Set是一种键的集合。

索引集合是指按下标作为索引值排序的数据结构
键的集合使用key访问元素,访问顺序与元素插入顺序一致。

很简单对吧?现在可能有人会问,既然这两者如此不同,为什么还要将它们进行比较?

在编程时,我们可以使用Array或Set来存储相同的数据集。但根据使用情况,我们应该选用正确的数据结构以助于提供最佳的解决方案。为了实现这个目标,首先我们需要了解它们分别是什么,有什么特点和能力。前面的文章中我们对这两种数据结构已经有了初步的了解,接下来就来看看它们的构建方式。

如何构建

Array

数组的构建非常简单直接,在JS中声明一个数组你可以直接使用字面上的语法:

var arr = []; //空数组
var arr = [1,2,3]; //元素为1,2,3的数组
复制代码

或者使用构造函数:

var arr = new Array(); //空数组
var arr = new Array(1,2,3);//元素为1,2,3的数组
复制代码
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值