Further rational:
* Symmetry with defineProperty/defineProperties. 
* One of the benefits of defineProperties (and create) is that they handle 
errors such that the failure of any individual property doesn't necessarily 
fail all the remaining ones. It is, of course, possible for a developer to 
define their own getOwnPropertyDescriptors to also behave this way, but it's 
not an obvious concern and is usually overlooked 

> On Mar 2, 2014, at 5:01 PM, Andrea Giammarchi <[email protected]> 
> 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
> [email protected]
> https://mail.mozilla.org/listinfo/es-discuss
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to