domenic at domenicdenicola.com (2013-09-25T02:32:45.963Z)
I'm trying to figure out the most painless way, given a set, to return the
set's values as an array.
Possibilities:
1. harmony wiki (http://wiki.ecmascript.org/doku.php?id=harmony:iterators) suggests the following, but it is a syntax error in traceur, continuum and "node --harmony"
```js
let arr = [e for e of mySet];
```
2. The ES6 standard supports the following production (i.e. expression, not var, before 'for'):
```
*IterationStatement : for ( LeftHandSideExpression of AssignmentExpression) Statement*
```
(see http://people.mozilla.org/~jorendorff/es6-draft.html#sec-13.6.4.2)
which suggests I should be able to do this:
```js
let arr = [];
for (arr[arr.length-1] of mySet);
```
(I can do the equivalent with for-in) but that also errors in the above three transpilers
3. So then I'm left with the pedestrian:
```js
let arr = [];
for (e of mySet) {
arr.push(e);
}
```
4. I also wondered if `Array.from(mySet)` would do the trick but again
doesn't seem to pass muster with any of the above transpilers. (continuum
returns a zero length array and the other two don't know Array.from)
Wondering if I'm missing something better.
I'm trying to figure out the most painless way, given a set, to return the set's values as an array. Possibilities: 1) harmony wiki ( http://wiki.ecmascript.org/doku.php?id=harmony:iterators&s=iterator) suggests the following, but it is a syntax error in traceur, continuum and "node --harmony" let arr = [e for e of mySet]; 2)The ES6 standard supports the following production (i.e. expression, not var, before 'for'): *IterationStatement : for ( LeftHandSideExpression of AssignmentExpression ) Statement* (see http://people.mozilla.org/~jorendorff/es6-draft.html#sec-13.6.4.2) which suggests I should be able to do this: let arr = []; for (arr[arr.length-1] of mySet); (I can do the equivalent with for-in) but that also errors in the above three transpilers 3) So then I'm left with the pedestrian: let arr = []; for (e of mySet) { arr.push(e); } 4) I also wondered if Array.from(mySet) would do the trick but again doesn't seem to pass muster with any of the above transpilers. (continuum returns a zero length array and the other two don't know Array.from) Wondering if I'm missing something better. thanks Angus @angustweets -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20130916/e9496de9/attachment.html>