Nodejs Array Flatten flatten(prevous)

Here you can find the source of flatten(prevous)

Method Source Code

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;
}

Related

  1. flatten()
    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); 
    
  2. flatten()
    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
    ...
    
  3. flatten(array)
    Array.prototype.flatten = function(array) {
      return this.reduce((prev, next) => prev.concat(next), []);
    };
    
  4. flatten(func)
    Array.prototype.flatten = function (func) {
      var result = [];
      forEach(this, function (element) {
        forEach(func(element), function (child) {
          result.push(child);
        });
      });
      return result;  
    
  5. flatten(nil)
    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;
    };
    ...
    
  6. flattenArray()
    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());
    
  7. 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())
    ...
    
  8. 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());
    
  9. 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() );