aboutsummaryrefslogtreecommitdiff
path: root/node_modules/core-js/modules/es6.array.from.js
diff options
context:
space:
mode:
authorFlorian Dold <florian.dold@gmail.com>2017-04-20 03:09:25 +0200
committerFlorian Dold <florian.dold@gmail.com>2017-04-24 16:14:29 +0200
commit82f2b76e25a4a67e01ec67e5ebe39d14ad771ea8 (patch)
tree965f6eb89b84d65a62b49008fd972c004832ccd1 /node_modules/core-js/modules/es6.array.from.js
parente6e0cbc387c2a77b48e4065c229daa65bf1aa0fa (diff)
Reorganize module loading.
We now use webpack instead of SystemJS, effectively bundling modules into one file (plus commons chunks) for every entry point. This results in a much smaller extension size (almost half). Furthermore we use yarn/npm even for extension run-time dependencies. This relieves us from manually vendoring and building dependencies. It's also easier to understand for new developers familiar with node.
Diffstat (limited to 'node_modules/core-js/modules/es6.array.from.js')
-rw-r--r--node_modules/core-js/modules/es6.array.from.js29
1 files changed, 14 insertions, 15 deletions
diff --git a/node_modules/core-js/modules/es6.array.from.js b/node_modules/core-js/modules/es6.array.from.js
index 69e5d4a62..4637d8d24 100644
--- a/node_modules/core-js/modules/es6.array.from.js
+++ b/node_modules/core-js/modules/es6.array.from.js
@@ -1,34 +1,33 @@
'use strict';
-var ctx = require('./_ctx')
- , $export = require('./_export')
- , toObject = require('./_to-object')
- , call = require('./_iter-call')
- , isArrayIter = require('./_is-array-iter')
- , toLength = require('./_to-length')
- , createProperty = require('./_create-property')
- , getIterFn = require('./core.get-iterator-method');
-
-$export($export.S + $export.F * !require('./_iter-detect')(function(iter){ Array.from(iter); }), 'Array', {
+var ctx = require('./$.ctx')
+ , $export = require('./$.export')
+ , toObject = require('./$.to-object')
+ , call = require('./$.iter-call')
+ , isArrayIter = require('./$.is-array-iter')
+ , toLength = require('./$.to-length')
+ , getIterFn = require('./core.get-iterator-method');
+$export($export.S + $export.F * !require('./$.iter-detect')(function(iter){ Array.from(iter); }), 'Array', {
// 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
from: function from(arrayLike/*, mapfn = undefined, thisArg = undefined*/){
var O = toObject(arrayLike)
, C = typeof this == 'function' ? this : Array
- , aLen = arguments.length
- , mapfn = aLen > 1 ? arguments[1] : undefined
+ , $$ = arguments
+ , $$len = $$.length
+ , mapfn = $$len > 1 ? $$[1] : undefined
, mapping = mapfn !== undefined
, index = 0
, iterFn = getIterFn(O)
, length, result, step, iterator;
- if(mapping)mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);
+ if(mapping)mapfn = ctx(mapfn, $$len > 2 ? $$[2] : undefined, 2);
// if object isn't iterable or it's array with default iterator - use simple case
if(iterFn != undefined && !(C == Array && isArrayIter(iterFn))){
for(iterator = iterFn.call(O), result = new C; !(step = iterator.next()).done; index++){
- createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);
+ result[index] = mapping ? call(iterator, mapfn, [step.value, index], true) : step.value;
}
} else {
length = toLength(O.length);
for(result = new C(length); length > index; index++){
- createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);
+ result[index] = mapping ? mapfn(O[index], index) : O[index];
}
}
result.length = index;