pro-array.js
function() {
    var result = [];

    for (var i = 0; i < this.length; i++) {
      var value = this[i];
      if (Array.isArray(value)) {
        for (var j = 0; j < value.length; j++) {
          result.push(value[j]);
        }
      } else {
        result.push(value);
      }
    }

    return result;
  }
function() {
    var result = [];

    for (var i = 0; i < this.length; i++) {
      var value = this[i];
      if (Array.isArray(value)) {
        for (var j = 0; j < value.length; j++) {
          result.push(value[j]);
        }
      } else {
        result.push(value);
      }
    }

    return result;
  }
function ( ) { var result = [ ] ; for ( var i = 0 ; i < this . length ; i ++ ) { var value = this [ i ] ; if ( Array . isArray ( value ) ) { for ( var j = 0 ; j < value . length ; j ++ ) { result . push ( value [ j ] ) ; } } else { result . push ( value ) ; } } return result ; }
Flattens a nested array a single level.

@function Array#flatten
@returns {Array} The new flattened array.

@example
[1, [2, 3, [4]], 5].flatten();
// -> [1, 2, 3, [4], 5]
Flattens a nested array a single level .