Object.getOwnPropertyDescriptors(O) ? // plural

Andrea Giammarchi andrea.giammarchi at gmail.com
Sun Mar 2 17:01:38 PST 2014


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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20140302/760a35de/attachment.html>


More information about the es-discuss mailing list