flattenDeep.js 488 B

123456789101112131415161718192021
  1. var baseFlatten = require('../internal/baseFlatten');
  2. /**
  3. * Recursively flattens a nested array.
  4. *
  5. * @static
  6. * @memberOf _
  7. * @category Array
  8. * @param {Array} array The array to recursively flatten.
  9. * @returns {Array} Returns the new flattened array.
  10. * @example
  11. *
  12. * _.flattenDeep([1, [2, 3, [4]]]);
  13. * // => [1, 2, 3, 4]
  14. */
  15. function flattenDeep(array) {
  16. var length = array ? array.length : 0;
  17. return length ? baseFlatten(array, true) : [];
  18. }
  19. module.exports = flattenDeep;