function flattenDeep(array) {
      var length = array == null ? 0 : array.length;
      return length ? baseFlatten(array, INFINITY) : [];
    }
Recursively flattens `array`.

@static
@memberOf _
@since 3.0.0
@category Array
@param {Array} array The array to flatten.
@returns {Array} Returns the new flattened array.
@example

_.flattenDeep([1, [2, [3, [4]], 5]]);
// => [1, 2, 3, 4, 5]