11'use strict' ;
2- var global = require ( '../internals/global' ) ;
32var bind = require ( '../internals/function-bind-context' ) ;
43var call = require ( '../internals/function-call' ) ;
54var toObject = require ( '../internals/to-object' ) ;
@@ -11,7 +10,7 @@ var createProperty = require('../internals/create-property');
1110var getIterator = require ( '../internals/get-iterator' ) ;
1211var getIteratorMethod = require ( '../internals/get-iterator-method' ) ;
1312
14- var Array = global . Array ;
13+ var $ Array = Array ;
1514
1615// `Array.from` method implementation
1716// https://tc39.es/ecma262/#sec-array.from
@@ -26,7 +25,7 @@ module.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undef
2625 var index = 0 ;
2726 var length , result , step , iterator , next , value ;
2827 // if the target is not iterable or it's an array with the default iterator - use a simple case
29- if ( iteratorMethod && ! ( this == Array && isArrayIteratorMethod ( iteratorMethod ) ) ) {
28+ if ( iteratorMethod && ! ( this === $ Array && isArrayIteratorMethod ( iteratorMethod ) ) ) {
3029 iterator = getIterator ( O , iteratorMethod ) ;
3130 next = iterator . next ;
3231 result = IS_CONSTRUCTOR ? new this ( ) : [ ] ;
@@ -36,7 +35,7 @@ module.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undef
3635 }
3736 } else {
3837 length = lengthOfArrayLike ( O ) ;
39- result = IS_CONSTRUCTOR ? new this ( length ) : Array ( length ) ;
38+ result = IS_CONSTRUCTOR ? new this ( length ) : $ Array( length ) ;
4039 for ( ; length > index ; index ++ ) {
4140 value = mapping ? mapfn ( O [ index ] , index ) : O [ index ] ;
4241 createProperty ( result , index , value ) ;
0 commit comments