Pregunta Cómo obtener el primer elemento de Set in ES6 (EcmaScript 2015) [duplicar]


Esta pregunta ya tiene una respuesta aquí:

En ES6, ¿cómo obtenemos rápidamente el elemento?

en Sintaxis MDN para el conjunto, No encontré una respuesta para eso.


32
2017-09-12 13:25


origen


Respuestas:


No parecen exponer la Lista para ser accesible desde el Objeto instanciado. Esto es del borrador de EcmaScript:

23.2.4 Propiedades de Instancias de Conjunto

Las instancias establecidas son objetos comunes que heredan propiedades del prototipo de conjunto. Las instancias establecidas también tienen un intervalo interno [[SetData]].

[[SetData]] es la lista de valores que contiene el Conjunto.

Una posible solución (una bastante costosa) es tomar un iterador y luego llamar next() por el primer valor:

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

Vale la pena mencionar también que:

Set.prototype.values === Set.prototype.keys

36
2017-09-12 14:28