Nodejs Array Filter filter(predicate)

Here you can find the source of filter(predicate)

Method Source Code

Array.prototype.filter = function(predicate){
   return this.reduce(function(accumulator, value){
      return predicate(value) ? accumulator.concat(value) : accumulator;
   }, []);//  w ww  . java 2  s.  c  o  m
}

console.log([1, 2, 3, 4, 5].filter(function(val){
   return val % 2 === 0; 
}));

//console.log([1, 2, 3, [4, 5, 6], [7, 8, [9, 10, [11, 12]]], 13 ].flatten())

Related

  1. filter(func)
    Array.prototype.filter = function(func) {
        var result = [];
        for(var i=0;i<this.length;i++) 
            if (func(this[i]))
                result.push(this[i]);
        return result;
    
  2. filter(grade)
    var school = [1, 2, 3, 4, 5, 6, 7, 8, 3, 35, 3, 5];
    Array.prototype.filter = function(grade) {
      var result = [];
      this.forEach(function(item) {
        if (grade(item)) {
          result.push(item);
      });
      return result;
    ...
    
  3. filter(isOk)
    const array = [1, 42, 7, 9, 13, 10, 20, 35, 45, -7, -3, 0, 4, -1, 15];
    Array.prototype.filter = function (isOk) {
      let filteredArray = [];
      const len = this.length;
      for (let i = 0; i < len; i += 1) {
        if(isOk(this[i], i, this)) {
          filteredArray.push(this[i]);
      return filteredArray;
    };
    
  4. filter(iterator)
    Array.prototype.filter = function(iterator) {
      var results = [];
      for (var i = 0, len = this.length; i < len; i++) {
        if (iterator(this[i], i)) {
          results.push(this[i]);
      return results;
    };
    ...
    
  5. filter(predicate)
    Array.prototype.filter = function(predicate) {
      var result = []
      for ( var i = 0; i < this.length; i++) {
        if (predicate(this[i])) {
          result.push(this[i]);
      return result;
    
  6. filter(predicate)
    Array.prototype.filter = function (predicate) {
        let result = [];
        this.forEach(item => {
            if (predicate(item)) {
                result.push(item);
        })
        return result;
    };
    ...
    
  7. filter(predicate)
    Array.prototype.filter = function(predicate) {
      var filtered_array = [];
      this.forEach(function (element, i) {
        if (predicate(element)) filtered_array.push(element);
      });
      return filtered_array;
    
  8. filter(predicateFunction)
    Array.prototype.filter = function(predicateFunction) {
      var results = [];
      this.forEach(function(itemInArray) {
        if (predicateFunction(itemInArray)) {
        results.push(itemInArray);
      });
      return results;
    };
    ...
    
  9. filter(predicateFunction)
    Array.prototype.filter = function(predicateFunction) {
      var results = [];
      this.forEach(function(itemInArray) {
        if(predicateFunction(itemInArray) == true)
          results.push(itemInArray);
      });
      return results;
    };