在Node.js中callback
今天我正在testingnode.js中的callback函数
我的代码是
function callback_test(callback) { for(i=0;i<=10;i++){ callback(i); } } callback_test(function(result) { console.log(result); callback_test(function(result2){ console.log(result2); }); });
输出是
0 0 1 2 3 4 5 6 7 8 9 10
结果应该是
0
0到9和
1
再次从0到9。
但是,第一个callback是不工作的所有循环。 这只是第一个循环。 为什么?
你需要在函数中声明i
,否则你得到一个全局variables(嵌套的调用共享,因此它只能计数到一次):
function callback_test(callback) { for(var i=0;i<=10;i++){ callback(i); } }