You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							20 lines
						
					
					
						
							802 B
						
					
					
				
			
		
		
	
	
							20 lines
						
					
					
						
							802 B
						
					
					
				'use strict'; | 
						|
var $ = require('../internals/export'); | 
						|
var flattenIntoArray = require('../internals/flatten-into-array'); | 
						|
var toObject = require('../internals/to-object'); | 
						|
var toLength = require('../internals/to-length'); | 
						|
var toInteger = require('../internals/to-integer'); | 
						|
var arraySpeciesCreate = require('../internals/array-species-create'); | 
						|
 | 
						|
// `Array.prototype.flat` method | 
						|
// https://github.com/tc39/proposal-flatMap | 
						|
$({ target: 'Array', proto: true }, { | 
						|
  flat: function flat(/* depthArg = 1 */) { | 
						|
    var depthArg = arguments.length ? arguments[0] : undefined; | 
						|
    var O = toObject(this); | 
						|
    var sourceLen = toLength(O.length); | 
						|
    var A = arraySpeciesCreate(O, 0); | 
						|
    A.length = flattenIntoArray(A, O, O, sourceLen, 0, depthArg === undefined ? 1 : toInteger(depthArg)); | 
						|
    return A; | 
						|
  } | 
						|
});
 | 
						|
 |