| 'use strict'; |
| var ArrayBufferViewCore = require('../internals/array-buffer-view-core'); |
| var $map = require('../internals/array-iteration').map; |
| var speciesConstructor = require('../internals/species-constructor'); |
| |
| var aTypedArray = ArrayBufferViewCore.aTypedArray; |
| var aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor; |
| |
| // `%TypedArray%.prototype.map` method |
| // https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.map |
| ArrayBufferViewCore.exportProto('map', function map(mapfn /* , thisArg */) { |
| return $map(aTypedArray(this), mapfn, arguments.length > 1 ? arguments[1] : undefined, function (O, length) { |
| return new (aTypedArrayConstructor(speciesConstructor(O, O.constructor)))(length); |
| }); |
| }); |