2 回答

TA貢獻1859條經(jīng)驗 獲得超6個贊
正如 xavier 所評論的,這不應(yīng)該只編譯。您可以嘗試的一種方法是:
const IamCallBack = () => { console.log("three");};
function f1(callback) {
console.log("two");
callback();
}
f1(IamCallBack);

TA貢獻1719條經(jīng)驗 獲得超6個贊
以下是如何使用回調(diào)的示例:
const http=require('http');
const fs=require('fs');
function f1(arg_string,callback)
{
console.log(arg_string);
callback("three");
}
const server=http.createServer((req,res)=>{
});
server.listen(9800);
console.log("one");
f1("two",function(cb_string){
console.log(cb_string);
});
這將打?。?/p>
one
two
three
首先,將“two”作為參數(shù)提供給f1,將其打印到控制臺。一旦函數(shù)完成,它就會調(diào)用該callback函數(shù)。我們將回調(diào)函數(shù)定義為:
function(cb_string){
console.log(cb_string);
}
這在調(diào)用時作為第二個參數(shù)提供f1。然后一旦f1完成運行,它將調(diào)用提供給它的任何函數(shù):
function f1(arg_string,callback)
{
console.log(arg_string);
callback("three"); //<--- whatever function you used to call it
}
執(zhí)行回調(diào)函數(shù)時,它會輸出“三”,因為這就是f1返回給原始調(diào)用者的內(nèi)容:
console.log(cb_string);
添加回答
舉報