main
Last change
on this file was d24f17c, checked in by Aleksandar Panovski <apano77@…>, 16 months ago |
Initial commit
|
-
Property mode
set to
100644
|
File size:
1.0 KB
|
Rev | Line | |
---|
[d24f17c] | 1 | 'use strict';
|
---|
| 2 | var $ = require('../internals/export');
|
---|
| 3 | var DESCRIPTORS = require('../internals/descriptors');
|
---|
| 4 | var ownKeys = require('../internals/own-keys');
|
---|
| 5 | var toIndexedObject = require('../internals/to-indexed-object');
|
---|
| 6 | var getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');
|
---|
| 7 | var createProperty = require('../internals/create-property');
|
---|
| 8 |
|
---|
| 9 | // `Object.getOwnPropertyDescriptors` method
|
---|
| 10 | // https://tc39.es/ecma262/#sec-object.getownpropertydescriptors
|
---|
| 11 | $({ target: 'Object', stat: true, sham: !DESCRIPTORS }, {
|
---|
| 12 | getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) {
|
---|
| 13 | var O = toIndexedObject(object);
|
---|
| 14 | var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
|
---|
| 15 | var keys = ownKeys(O);
|
---|
| 16 | var result = {};
|
---|
| 17 | var index = 0;
|
---|
| 18 | var key, descriptor;
|
---|
| 19 | while (keys.length > index) {
|
---|
| 20 | descriptor = getOwnPropertyDescriptor(O, key = keys[index++]);
|
---|
| 21 | if (descriptor !== undefined) createProperty(result, key, descriptor);
|
---|
| 22 | }
|
---|
| 23 | return result;
|
---|
| 24 | }
|
---|
| 25 | });
|
---|
Note:
See
TracBrowser
for help on using the repository browser.