Javascript 回调函数不使用';行政长官
因此,我有两个函数,我希望第二个函数只在第一个函数完成后执行 情况就是这样:Javascript 回调函数不使用';行政长官,javascript,jquery,function,callback,Javascript,Jquery,Function,Callback,因此,我有两个函数,我希望第二个函数只在第一个函数完成后执行 情况就是这样: $('.link').on('click', function(e){ e.preventDefault(); function myLoopOne () { console.log('first function executed'); } function myLoop () { console.log('second function execu
$('.link').on('click', function(e){
e.preventDefault();
function myLoopOne () {
console.log('first function executed');
}
function myLoop () {
console.log('second function executed');
}
myLoopOne(function(){
myLoop();
});
});
不幸的是,只有第一个函数执行,回调函数myLoop()没有被调用
有人能告诉我我做错了什么吗?您需要使用提供给
myLoopOne()
的函数引用并调用它,如下所示:
$('.link')。在('click',函数(e)上{
e、 预防默认值();
函数myLoopOne(回调){/<接收函数引用
log(“执行的第一个函数”);
callback&&callback();//<调用引用的函数(如果已提供)
}
函数myLoop(){
log(“执行第二个函数”);
}
myLoopOne(函数(){
myLoop();
});
});代码>
单击我
您需要使用提供给myLoopOne()的函数的引用并调用它,如下所示:
$('.link')。在('click',函数(e)上{
e、 预防默认值();
函数myLoopOne(回调){/<接收函数引用
log(“执行的第一个函数”);
callback&&callback();//<调用引用的函数(如果已提供)
}
函数myLoop(){
log(“执行第二个函数”);
}
myLoopOne(函数(){
myLoop();
});
});代码>
单击我
尝试此操作,需要在调用其他函数的函数中添加回调作为参数和方法调用。不仅是回调,还可以将任何单词作为参数和方法调用传递
$('.link')。在('click',函数(e)上{
e、 预防默认值();
myLoopOne(myLoop);
});
//需要在调用另一个函数的函数中添加回调作为参数和方法调用
函数myLoopOne(回调){
log(“执行的第一个函数”);
回调();
}
函数myLoop(){
log(“执行第二个函数”);
}
单击我
尝试此操作,需要在调用其他函数的函数中添加回调作为参数和方法调用。不仅是回调,还可以将任何单词作为参数和方法调用传递
$('.link')。在('click',函数(e)上{
e、 预防默认值();
myLoopOne(myLoop);
});
//需要在调用另一个函数的函数中添加回调作为参数和方法调用
函数myLoopOne(回调){
log(“执行的第一个函数”);
回调();
}
函数myLoop(){
log(“执行第二个函数”);
}
单击我
,在哪里调用回调?您将函数作为参数传递给myLoopOne,但代码缺少执行部分。您在哪里调用回调?您将函数作为参数传递给myLoopOne,但代码缺少执行部分。这是更好的答案。这是更好的答案。