/**回调函数:函数A作为参数传递到另一个函数B中,并且这个函数B执行函数A*/
//例子1:10和20之间的随机数
function fn(arg1,arg2,callback) {
var num = Math.ceil(Math.random()*(arg1-arg2)+arg2);
callback(num);
}
fn(10,20,function (num) {
console.log(num); //输出范围:10<num<20
});
//例子2:func1代码执行完成后执行func2
function func2(){
console.log(1234);
}
function func1(callback){
console.log('asdf');
(callback && typeof(callback) === "function") && callback(); //保证回调存在且必须是回调函数引用或者函数表达式!!!!!
}
func1(func2); //输出:asdf 1234