Files
lodash/flattenDeep.js
John-David Dalton 6cb3460fce Remove semicolons.
2017-02-05 22:22:04 -08:00

25 lines
620 B
JavaScript

import baseFlatten from './.internal/baseFlatten.js'
/** Used as references for various `Number` constants. */
const INFINITY = 1 / 0
/**
* Recursively flattens `array`.
*
* @since 3.0.0
* @category Array
* @param {Array} array The array to flatten.
* @returns {Array} Returns the new flattened array.
* @see flatMap, flatMapDeep, flatMapDepth, flatten, flattenDepth
* @example
*
* flattenDeep([1, [2, [3, [4]], 5]])
* // => [1, 2, 3, 4, 5]
*/
function flattenDeep(array) {
const length = array == null ? 0 : array.length
return length ? baseFlatten(array, INFINITY) : []
}
export default flattenDeep