[英]What does “Sets are to arrays as maps are to objects” mean?
我正在学习ES6,并在这段视频中偶然发现了这句话:'你可以说,集合是阵列,因为地图是对象'。
这个短语是什么意思 ? 为什么Set更多地链接到数组而不是map? (反之亦然)。
我知道这是一个非常具体的问题,但是自从我听到这句话后,我的头脑真的转过来了!
提前谢谢你,我是SO的新人,所以任何评论都表示赞赏。
Set
是值的集合,就像数组是值的集合一样(不涉及任何键,除了.length
/ .size
)
Map
是键值对的集合,就像对象是键值对的集合一样。 (虽然Map
的键可以是任何东西 ,而不仅仅是字符串)
当然,还有很多不同之处,但价值观和键值对之间的区别与您提出的问题最为相关。
Map
和对象示例:
const key = 'key'; const value = 'value'; const map = new Map(); const obj = {}; map.set(key, value); obj[key] = value;
Set
和数组示例:
const value = 'value'; const set = new Set(); const arr = []; set.add(value); arr.push(value);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.