Here you can find the source of flatten(prevous)
Array.prototype.flatten = function(prevous) { var flattenedArr = prevous || []; for (var i = 0; i < this.length; i++) { if(Array.isArray(this[i])) { this[i].flatten(flattenedArr);//from w w w .j av a2 s . co m } else if(this[i] === null) { } else { flattenedArr.push(this[i]); } } return flattenedArr; }
Array.prototype.flatten = Array.prototype.flatten || function() { 'use strict'; var that = this; for (var i = 0; i < that.length; i += 1) { if (Array.isArray(that[i])) { that = that.concat.apply([], that); i -= 1; return that; }; Array.prototype.flatten1 = Array.prototype.flatten1 || function() { 'use strict'; var res = []; (function flatten(arr) { for (var i = 0; i < arr.length; i += 1) { if (Array.isArray(arr[i])) { flatten(arr[i]); } else { res.push(arr[i]); }(this)); return res; }; Array.prototype.flatten2 = Array.prototype.flatten2 || function() { 'use strict'; for (var i = 0; i < this.length; i += 1) { if (Array.isArray(this[i])) { this.splice.apply(this, [i, 1].concat(this[i].flatten())); return this; }; var a = [1, 2, [3, 4, [5, 6]]]; console.log(a.flatten()); console.log(a); console.log(a.flatten1()); console.log(a); console.log(a.flatten2()); console.log(a);
var arrays = [[1, 2, 3], [4, 5], [6]]; console.log(arrays.reduce(function(a, b){ return a.concat(b); })); Array.prototype.flatten = function(){ return this.reduce(function(a, b){ if(!Array.prototype.isPrototypeOf(a)) a = [a]; else ...
Array.prototype.flatten = function(array) { return this.reduce((prev, next) => prev.concat(next), []); };
Array.prototype.flatten = function (func) { var result = []; forEach(this, function (element) { forEach(func(element), function (child) { result.push(child); }); }); return result;
Array.prototype.flatten = function(nil){ result = new Array(); for(var i = 0; i < this.length; i++){ item = this[i]; if($.isArray(item)) for(var j = 0; j < item.length; j++) result.push(item[j]); else result.push(item); return result; }; ...
function flattenArray(a, b) { return a.concat(b); Array.prototype.flattenArray = function() { return this.reduce(flattenArray); var arrays = [[1, 2, 3], [4, 5], [6]]; console.log(arrays.flattenArray());
Array.prototype.flattenArray = function() { var flatArray = arrays.reduce(function(a, b) { return a.concat(b); }, []); console.log(flatArray); return ""; var arrays = [[1, 2, 3], [4, 5], [6]]; console.log(arrays.flattenArray()) ...
Array.prototype.flattenArray = function() var rescultArray=[]; this.reduce(function(pre, cur,index) rescultArray=index==1?rescultArray.concat(pre,cur):rescultArray.concat(cur); }); return rescultArray; var arrays = [[1, 2, 3], [4, 5], [6]]; console.log(arrays.flattenArray());
Array.prototype.flattenArray = function (){ var array = this.reduce(function(a, b) {return a.concat(b);}, []); return array; var arrays = [[2, 3, 4], [1, 2], [2]]; console.log( arrays.flattenArray() );