flatten-deep.js 754 B

123456789101112131415161718192021222324252627
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. var is_array_1 = require("./is-array");
  4. /**
  5. * Flattens `array` a single level deep.
  6. *
  7. * @param {Array} arr The array to flatten.
  8. * @param {Array} result The array to return.
  9. * @return {Array} Returns the new flattened array.
  10. * @example
  11. *
  12. * flattenDeep([1, [2, [3, [4]], 5]]); // => [1, 2, 3, 4, 5]
  13. */
  14. var flattenDeep = function (arr, result) {
  15. if (result === void 0) { result = []; }
  16. if (!is_array_1.default(arr)) {
  17. result.push(arr);
  18. }
  19. else {
  20. for (var i = 0; i < arr.length; i += 1) {
  21. flattenDeep(arr[i], result);
  22. }
  23. }
  24. return result;
  25. };
  26. exports.default = flattenDeep;
  27. //# sourceMappingURL=flatten-deep.js.map