Here you can find the source of flatten()
Array.prototype.flatten = function() { var resultArray = []; function getValues(array) { var i;//from ww w . j a v a 2 s .c om for (i = 0; i < array.length; i += 1) { var value = array[i]; if (Array.isArray(value)) { getValues(value); } else { resultArray.push(value); } } } getValues(this); return resultArray; }; var array = [1, 2, 3, 4]; console.log(array.flatten()); var array = [1, 2, [3, 4], [5, 6]]; console.log(array.flatten()); console.log(array); // Not changed var array = [0, ["string", "values"], 5.5, [[1, 2, true], [3, 4, false]], 10]; console.log(array.flatten());
Array.prototype.flatten = function() { function getArrayElements(array, result) { if(!result) { result = []; for (var i=0; i<array.length; i++) { if(Array.isArray(array[i])) { getArrayElements(array[i], result); }else { ...
Array.prototype.flatten = function() { return this.inject([], function(array, value) { if (DiaFluxUtils.isArray(value)) return array.concat(value.flatten()); array.push(value); return array; });
Array.prototype.flatten = function(){ return this.reduce(function(flat, val, i, hilly){ Array.isArray(val) ? flat.concat(val.flatten()) : flat.concat(val); }, []);
Array.prototype.flatten = function () { var result = []; function flatten(elements, output) { elements.forEach(function (element) { if (!(typeof element === 'object' || typeof element === typeof Array)) { output.push(element); else { flatten(element, output); ...
Array.prototype.flatten = function() { return Array.prototype.concat.apply([], this);
Array.prototype.flatten = function () { var thisArr = this; var newArr = []; recursive(thisArr); function recursive (arr) { for (var i = 0; i < arr.length; i++) { if (arr[i] instanceof Array) { recursive(arr[i]); } else { ...
"use strict"; Array.prototype.flatten = function () { var result = []; function getValues(array) { var i; for (i = 0; i < array.length; i++) { var value = array[i]; if (Array.isArray(value)) { getValues(value); ...
var array; Array.prototype.flatten = function () { 'use strict'; var resultArray = []; function getValues(array) { var i, value; for (i = 0; i < array.length; i += 1) { value = array[i]; ...
Array.prototype.flatten = function() { var resultArray = []; function getValues(array) { var i; for (i = 0; i < array.length; i += 1) { var value = array[i]; if (Array.isArray(value)) { getValues(value); } else { ...