【发布时间】:2025-12-03 20:40:01
【问题描述】:
在 ES6 中,我们如何快速获取元素?
在MDN Syntax for Set,我没有找到答案。
【问题讨论】:
-
你认为“第一”是什么?
在 ES6 中,我们如何快速获取元素?
在MDN Syntax for Set,我没有找到答案。
【问题讨论】:
他们似乎没有将列表公开为可从实例化对象访问。这是来自 EcmaScript 草案:
23.2.4 集合实例的属性
Set 实例是从 Set 原型继承属性的普通对象。 Set 实例也有一个 [[SetData]] 内部槽。
[[SetData]] 是 Set 所持有的值的列表。
一个可能的解决方案(一个有点昂贵的解决方案)是获取一个迭代器,然后调用next() 获取第一个值:
var x = new Set();
x.add(1);
x.add({ a: 2 });
//get iterator:
var it = x.values();
//get first entry:
var first = it.next();
//get value out of the iterator entry:
var value = first.value;
console.log(value); //1
也值得一提:
Set.prototype.values === Set.prototype.keys
【讨论】:
[...theSet][0]