Nodejs Array ForEach forEach2(a)

Here you can find the source of forEach2(a)

Method Source Code

Array.prototype.forEach2 = function (a) {
  for (var b = 0; b < this.length; ++b) a(this[b], b, this)
};

Array.prototype.map2 = function (a) {
  var l = this.length;
  var array = new Array(l),
    i = 0;// ww w.j  a  va2s.c  o  m
  for (; i < l; i++) {
    array[i] = a(this[i], i)
  }
  return array;
}

Array.prototype.unique = function () {
  return this.filter(function (value, index, self) {
    return self.indexOf(value) === index;
  });
};

function hasClass(ele, cls) {
  return ele.className.match(new RegExp('(\\s|^)' + cls + '(\\s|$)'));
}

function addClass(ele, cls) {
  if (!hasClass(ele, cls)) ele.className += " " + cls;
}

function removeClass(ele, cls) {
  if (hasClass(ele, cls)) {
    var reg = new RegExp('(\\s|^)' + cls + '(\\s|$)');
    ele.className = ele.className.replace(reg, ' ');
  }
}

Related

  1. forEach(func, thisObj)
    Array.prototype.forEach = Array.prototype.forEach || (Array.prototype.forEach = function(func, thisObj) {
      for (var i=0, l=this.length; i<l; ++i) {
        func.call(thisObj, this[i], i, this);
      };
    });
    
  2. forEach(iterator)
    Array.prototype.forEach = function(iterator) {
      for (var i = 0, len = this.length; i < len; i++) {
        iterator(this[i], i);
    };
    
  3. forEach(predicate)
    Array.prototype.forEach = function(predicate)
      for (var i = 0; i < this.length; i++)
        predicate(this[i]);
    Array.prototype.contains = function(o)
      return this.indexOf(o) >= 0;
    
  4. forEach.call(items, (item)>
    items = document.querySelectorAll('x-markdown')
    Array.prototype.forEach.call(items, (item)=>{
      html = marked(item.textContent)
      item.innerHTML = html
    })
    
  5. forEach1( callback )
    Array.prototype.forEach1 = function ( callback ) {
            for (var j = 0, k ; k=this[j++]; ) {  callback(k,j,this) ; }
    Array.prototype.forEach2 = function ( callback ) {
            for (var j = 0 ; j < this.length; j++ ) {  callback(this[j],j,this) ; }
    Array.prototype.forEach3 = function ( callback ) {
            var j = 0 ; while( this[j++] ) {  callback(this[j],j,this) ; }
    var a = [1,2,3,4,5,6,7,8,9,0] ;
    function unit ( method ) 
       var s = [] ;
        a[method]( function (v,i,a) { s.push(i+":"+v); } )
      return s ;
    function loop ( size, method ) {
    var t1 = new Date() ;
     while ( size--) { unit(method); }
    return (new Date()) - t1 ;
    loopall = function ( ) {
     var s = [] ;
     var j = 0, method ; while ( method = arguments[j++] ) {
      s.push( method + ": " +  loop( 1e4 , method )  + " ms " ) ;
       return s ;
    } ( "forEach1", "forEach2", "forEach3" ) .join("\n") ;
    
  6. forEachCallback(callback, finishCallback)
    'use strict';
    Array.prototype.forEachCallback = function(callback, finishCallback) {
      var current = 0;
      var self = this;
      var next = function() {
        if (!self) {
          console.log("Something went wrong...");
          throw('No self!');
          return;
    ...
    
  7. forEachSync(callback,compliteCallBack)
    var async = require('async');
    var worker = function(array,callback,compliteCallBack){
      var index = 0;
      var q = async.queue(function(item,cb){
        var cback = function(){
          index = index+1;
          cb();
        };
        callback(item,index,cback)
    ...
    
  8. forEachSync(callback,compliteCallBack)
    var async = require('async');
    var worker = function(array,callback,compliteCallBack){
      var index = 0;
      var q = async.queue(function(item,cb){
        var cback = function(){
          index = index+1;
          cb(); 
        };
        process.nextTick(function(){
    ...
    
  9. foreach( callback )
    Array.prototype.foreach = function( callback ) {
      for( var k=0; k<this .length; k++ ) {
        callback( k, this[ k ] );
    };