Apparently this triggered an @rwaldron which seems to be super-effective In agenda for April's meeting.
Thanks Sent from my Windows Phone ------------------------------ From: C. Scott Ananian <csc...@cscott.net> Sent: 3/4/2014 6:16 To: Andrea Giammarchi <andrea.giammar...@gmail.com> Cc: es-discuss@mozilla.org list <es-discuss@mozilla.org> Subject: Re: Object.getOwnPropertyDescriptors(O) ? // plural Have you filed a bugzilla ticket for this? That seems the best way to ensure it will get discussed at the next TC39 meeting and resolved one way or the other. --scott On Mar 3, 2014 8:44 PM, "Andrea Giammarchi" <andrea.giammar...@gmail.com> wrote: > up ? > > > On Sun, Mar 2, 2014 at 5:43 PM, Andrea Giammarchi < > andrea.giammar...@gmail.com> wrote: > >> Brandon I take your answer as +1, thanks. >> >> I've also "gisted" a possible/basic polyfill here: >> https://gist.github.com/WebReflection/9317065 >> >> Cheers >> >> >> On Sun, Mar 2, 2014 at 5:16 PM, Andrea Giammarchi < >> andrea.giammar...@gmail.com> wrote: >> >>> actually, since `Object.getOwnPropertyDescriptor` accepts `Symbols` too >>> as second argument, the equivalent with current ES6 would be even more >>> prolix than that >>> >>> ```javascript >>> >>> var shallowCopy = Object.create( >>> Object.getPrototypeOf(originalObject), >>> Object.getOwnPropertyNames(originalObject).concat( >>> Object.getOwnPropertySymbols(originalObject) >>> ).reduce(function (descriptors, name) { >>> descriptors[name] = Object.getOwnPropertyDescriptor( >>> originalObject, name >>> ); >>> return descriptors; >>> }, {}) >>> ); >>> >>> ``` >>> >>> assuming Symbols will be definable through descriptors ... all this VS >>> >>> ```javascript >>> var shallowCopy = Object.create( >>> Object.getPrototypeOf(originalObject), >>> Object.getOwnPropertyDescriptors(originalObject) >>> ); >>> ``` >>> >>> which I believe is a win. >>> >>> Thanks >>> >>> >>> On Sun, Mar 2, 2014 at 5:01 PM, Andrea Giammarchi < >>> andrea.giammar...@gmail.com> wrote: >>> >>>> I wonder if by any chance this could sneak into ES6 ... we have only >>>> singular version here: >>>> >>>> https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.getownpropertydescriptor >>>> >>>> **rationale** >>>> The easiest way to create a shallow copy of a generic object could be: >>>> >>>> ```javascript >>>> var shallowCopy = Object.create( >>>> Object.getPrototypeOf(originalObject), >>>> Object.getOwnPropertyDescriptors(originalObject) >>>> ); >>>> ``` >>>> >>>> Today what we have to do this instead: >>>> >>>> ```javascript >>>> var shallowCopy = Object.create( >>>> Object.getPrototypeOf(originalObject), >>>> Object.getOwnPropertyNames(originalObject).reduce( >>>> function (descriptors, name) { >>>> descriptors[name] = Object.getOwnPropertyDescriptor( >>>> originalObject, name >>>> ); >>>> return descriptors; >>>> }, {}) >>>> ); >>>> ``` >>>> >>>> I see latter pattern as sort of unnecessary overhead that could be also >>>> much faster in core and polyfilled in the meanwhile. >>>> >>>> Thoughts ? >>>> >>>> Cheers >>>> >>>> >>>> >>>> >>>> >>> >> > > _______________________________________________ > 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