oap.js
function checksDo(listChecks, cb) {
    if (listChecks.length === 0) {
      return cb();
    }

    var check = listChecks.shift();
    check.func(check.key, function () {
      // schedule the next check
      setImmediate(checksDo, listChecks, cb);
    });
  }
function checksDo(listChecks, cb) {
    if (listChecks.length === 0) {
      return cb();
    }

    var check = listChecks.shift();
    check.func(check.key, function () {
      // schedule the next check
      setImmediate(checksDo, listChecks, cb);
    });
  }
function checksDo ( listChecks , cb ) { if ( listChecks . length === 0 ) { return cb ( ) ; } var check = listChecks . shift ( ) ; check . func ( check . key , function ( ) { // schedule the next check setImmediate ( checksDo , listChecks , cb ) ; } ) ; }
Do all the checks in the list
Do all the checks in the list