No, it calls `[Symbol.iterator]()` on the RHS iterable, using the iterator protocol. It has nothing to do with arrays.
On Sat, Oct 1, 2016 at 12:29 PM, Olivier Lalonde <olalo...@gmail.com> wrote: > > ``` > > function* ones(){ while(true) yield 1; } > > var [...a]=ones(); // freezes > > ``` > > So if that freezes, whats the problem with `[...a, last]`? It would just > freeze as well... > > > access to array elements may have side effects > > Doesn't `[a, b,...vals]` access array elements? > > > On Sat, Oct 1, 2016 at 10:29 AM, Cyril Auburtin <cyril.aubur...@gmail.com> > wrote: > >> ah ok, I forgot about other types of iterables, like infinite ones: >> ``` >> function* ones(){ while(true) yield 1; } >> var [...a]=ones(); // freezes >> ``` >> >> >> 2016-10-01 18:24 GMT+02:00 Dmitry Soshnikov <dmitry.soshni...@gmail.com>: >> >>> Yeah, because it's not a pattern patching, and access to array elements >>> may have side effects, it's seems hard to specify/implement. Otherwise, >>> destructuring might analyze the pattern, see the last element is required, >>> extract it, and then do iteration for others. >>> >>> Dmitry >>> >>> >>> On Saturday, October 1, 2016, Michael Theriot < >>> michael.lee.ther...@gmail.com> wrote: >>> >>>> I think this is because there's no universal way of determining when an >>>> iterator ends. The only way this could work for all iterators would require >>>> popping values off of `a` after they've been added. >>>> >>>> On Sat, Oct 1, 2016 at 6:17 AM, Cyril Auburtin < >>>> cyril.aubur...@gmail.com> wrote: >>>> >>>>> It was possibly already discussed, but why isn't: >>>>> ``` >>>>> var [...a, last] = [1,2,3]; >>>>> ``` >>>>> supported? >>>>> >>>>> I don't see the problem, as long as there's one ... only >>>>> >>>>> _______________________________________________ >>>>> es-discuss mailing list >>>>> es-discuss@mozilla.org >>>>> https://mail.mozilla.org/listinfo/es-discuss >>>>> >>>>> >>>> >> >> _______________________________________________ >> es-discuss mailing list >> es-discuss@mozilla.org >> https://mail.mozilla.org/listinfo/es-discuss >> >> > > > -- > - Oli > > Oli Lalonde > http://www.syskall.com <-- connect with me! > > _______________________________________________ > es-discuss mailing list > es-discuss@mozilla.org > https://mail.mozilla.org/listinfo/es-discuss > >
_______________________________________________ es-discuss mailing list es-discuss@mozilla.org https://mail.mozilla.org/listinfo/es-discuss