3 if (!process.version ||
4 process.version.indexOf('v0.') === 0 ||
5 process.version.indexOf('v1.') === 0 && process.version.indexOf('v1.8.') !== 0) {
6 module.exports = nextTick;
8 module.exports = process.nextTick;
11 function nextTick(fn, arg1, arg2, arg3) {
12 if (typeof fn !== 'function') {
13 throw new TypeError('"callback" argument must be a function');
15 var len = arguments.length;
20 return process.nextTick(fn);
22 return process.nextTick(function afterTickOne() {
26 return process.nextTick(function afterTickTwo() {
27 fn.call(null, arg1, arg2);
30 return process.nextTick(function afterTickThree() {
31 fn.call(null, arg1, arg2, arg3);
34 args = new Array(len - 1);
36 while (i < args.length) {
37 args[i++] = arguments[i];
39 return process.nextTick(function afterTick() {