_object-to-array.js 562 B

123456789101112131415161718192021
  1. var DESCRIPTORS = require('./_descriptors');
  2. var getKeys = require('./_object-keys');
  3. var toIObject = require('./_to-iobject');
  4. var isEnum = require('./_object-pie').f;
  5. module.exports = function (isEntries) {
  6. return function (it) {
  7. var O = toIObject(it);
  8. var keys = getKeys(O);
  9. var length = keys.length;
  10. var i = 0;
  11. var result = [];
  12. var key;
  13. while (length > i) {
  14. key = keys[i++];
  15. if (!DESCRIPTORS || isEnum.call(O, key)) {
  16. result.push(isEntries ? [key, O[key]] : O[key]);
  17. }
  18. }
  19. return result;
  20. };
  21. };