es.iterator.to-array.js 678 B

1234567891011121314151617181920
  1. 'use strict';
  2. var $ = require('../internals/export');
  3. var anObject = require('../internals/an-object');
  4. var createProperty = require('../internals/create-property');
  5. var iterate = require('../internals/iterate');
  6. var getIteratorDirect = require('../internals/get-iterator-direct');
  7. // `Iterator.prototype.toArray` method
  8. // https://tc39.es/ecma262/#sec-iterator.prototype.toarray
  9. $({ target: 'Iterator', proto: true, real: true }, {
  10. toArray: function toArray() {
  11. var result = [];
  12. var index = 0;
  13. iterate(getIteratorDirect(anObject(this)), function (element) {
  14. createProperty(result, index++, element);
  15. }, { IS_RECORD: true });
  16. return result;
  17. }
  18. });