在JS中,函数实际上是一种对象,在变量中,它可以被储存,它可以当传参,可以在函数中被创建,可以在函数中被返回。回调函数就是将一个函数作为参数传给另一个函数,并在适当的时候再调用它。
下面是一个简单的回调函数(callback)
var function_1 = function(callback) { var a = 0; console.log(a ++);//a = 0 (callback && typeof(callback) === "function") && callback(a); } function_1(function(a){console.log(a)});//a先参加当前环境下调用,再输出
又比如
var word_2 = "do another thing"; var function_1=function(callback){ this.word_1 = "do something."; console.log(this.word_1); (callback && typeof(callback) === "function") && callback(); } var function_2=function(){console.log(this.word_2)}; function_1(function_2);//首先打印 word_1,然后再打印word_2(word_2是全局变量,因此可以被访问到)