set

Array & Set

Array 和Set工作方式存在大量的交叉。但使用Set在代码运行速度上比Array更有优势:快速,可扩展

最根本的区别:

数组:数组中的数据值按索引排序,是一个索引集合

set :set不使用索引, 而是使用键对数据排序, 是一个键的集合。set 中的元素按插入顺序是可迭代的,它不能包含任何重复的数据。换句话说,set中的每一项都必须是惟一的。

set 相对于数组有几个优势,特别是在运行时间方面:

查看元素:使用indexOf()或includes()检查数组中的项是否存在是比较慢的。

删除元素:在Set中,可以根据每项的 value 来删除该项。在数组中,等价的方法是使用基于元素的索引的splice()。与前一点一样,依赖于索引的速度很慢。

保存 NaN:不能使用indexOf()或 includes() 来查找值 NaN,而 Set 可以保存此值。

删除重复项:Set对象只存储惟一的值,如果不想有重复项存在,相对于数组的一个显著优势,因为数组需要额外的代码来处理重复。

复制代码

转载于:https://juejin.im/post/5d26d9a0e51d455d6c0ad9ae

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值