回撥函式-簡單易懂
阿新 • • 發佈:2018-11-14
回撥函式
我們先來看看回調的英文定義:A callback is a function that is passed as an argument to another function and is executed after its parent function has completed。
字面上的理解,回撥函式就是一個引數,將這個函式作為引數傳到另一個函式裡面,當那個函式執行完之後,再執行傳進去的這個函式。這個過程就叫做回撥。
比如:A為回掉函式
B為呼叫者
當B執行是呼叫A
B的呼叫為
function A(B(c),a,b) {
let c=a+b
B(c);
console.log('我是主函式'); } //定義回撥函式
function B(c){
console.log(c)
} //呼叫主函式,將函式B傳進去 A(B);
//定義主函式,回撥函式作為引數
function A(callback) { callback(); console.log('我是主函式'); } //定義回撥函式
function B(){ setTimeout("console.log('我是回撥函式')", 3000);//模仿耗時操作 }
//呼叫主函式,將函式B傳進去 A(B);
//輸出結果
我是主函式
我是回撥函式
總結,通過上面例子可以看出回撥函式是非同步,在呼叫回掉函式時不會等著被呼叫的函式執行完才執行下一句,而是接著執行下一句