object-define-properties.js 647 B

12345678910111213141516
  1. var DESCRIPTORS = require('../internals/descriptors');
  2. var definePropertyModule = require('../internals/object-define-property');
  3. var anObject = require('../internals/an-object');
  4. var objectKeys = require('../internals/object-keys');
  5. // `Object.defineProperties` method
  6. // https://tc39.github.io/ecma262/#sec-object.defineproperties
  7. module.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {
  8. anObject(O);
  9. var keys = objectKeys(Properties);
  10. var length = keys.length;
  11. var index = 0;
  12. var key;
  13. while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]);
  14. return O;
  15. };