Skip to main content
Module

x/ramda/internal/_makeFlat.js

:ram: Practical functional Javascript
Very Popular
Go to Latest
File
import _isArrayLike from './_isArrayLike';

/** * `_makeFlat` is a helper function that returns a one-level or fully recursive * function based on the flag passed in. * * @private */export default function _makeFlat(recursive) { return function flatt(list) { var value, jlen, j; var result = []; var idx = 0; var ilen = list.length;
while (idx < ilen) { if (_isArrayLike(list[idx])) { value = recursive ? flatt(list[idx]) : list[idx]; j = 0; jlen = value.length; while (j < jlen) { result[result.length] = value[j]; j += 1; } } else { result[result.length] = list[idx]; } idx += 1; } return result; };}