回调函数(1)

2016-04-12  本文已影响0人  soso101

JavaScript中的回调无处不在,尤其是使用异步方式。因此理解回调函数就是第一步,以下是自己写的一个测试的示例。

//test,测试回调函数

console.log('this is the test 1');

function step1(callback){

console.log('step1');

//callback();

//function toString(){

//  return 'step1';

//}

return function(){

console.log('callback1');

return callback;

};

}

function step2(callback){

console.log('step2');

//function toString(){

//    return 'step2';

//}

//callback();

return function(){

console.log('callback2');

return callback;

};

}

function step3(){

console.log('step3');

}

step1(step2)()(step3)()();

//关于上面一行的分步说明

var s1 = step1(step2);//返回step1匿名函数

console.log(s1.toString());

var s2 = s1();//执行匿名函数,返回step2

console.log(s2.toString());

console.log(s2 == step2);//true

var s3 = s2(step3);//返回step2的匿名函数

console.log(s3.toString());

var s4 = s3();//执行匿名函数,返回step3

console.log(s4.toString());

console.log(s4 == step3);//true

s4();

console.log('test 1 end');

上一篇下一篇

猜你喜欢

热点阅读