| 'use strict'; |
| // https://tc39.github.io/proposal-flatMap/#sec-Array.prototype.flatMap |
| var $export = require('./_export'); |
| var flattenIntoArray = require('./_flatten-into-array'); |
| var toObject = require('./_to-object'); |
| var toLength = require('./_to-length'); |
| var aFunction = require('./_a-function'); |
| var arraySpeciesCreate = require('./_array-species-create'); |
| |
| $export($export.P, 'Array', { |
| flatMap: function flatMap(callbackfn /* , thisArg */) { |
| var O = toObject(this); |
| var sourceLen, A; |
| aFunction(callbackfn); |
| sourceLen = toLength(O.length); |
| A = arraySpeciesCreate(O, 0); |
| flattenIntoArray(A, O, O, sourceLen, 0, 1, callbackfn, arguments[1]); |
| return A; |
| } |
| }); |
| |
| require('./_add-to-unscopables')('flatMap'); |