domenic at domenicdenicola.com (2013-09-25T02:36:20.952Z)
On Mon, Sep 16, 2013 at 11:33 AM, Angus Croll <anguscroll at gmail.com> wrote: > I'm trying to figure out the most painless way, given a set, to return the > set's values as an array. ```js set.values(); // An array of the set's values ``` > 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]; > ``` Just a heads up, that wiki page is out of date (see the notice at the top of the page) and shows the old syntax (as shown above). The up-to-date syntax is: ```js let arr = [for (e of mySet) e]; ``` (I realize this is beside the point of the question)
On Mon, Sep 16, 2013 at 11:33 AM, Angus Croll <anguscroll at gmail.com> wrote: > I'm trying to figure out the most painless way, given a set, to return the > set's values as an array. > set.values(); // An array of the set's values > > 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]; > Just a heads up, that wiki page is out of date (see the notice at the top of the page) and shows the old syntax (as shown above). The up-to-date syntax is: let arr = [for (e of mySet) e]; (I realize this is beside the point of the question) Rick > > 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 > > _______________________________________________ > es-discuss mailing list > es-discuss at mozilla.org > https://mail.mozilla.org/listinfo/es-discuss > > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20130916/80ce30bb/attachment.html>