猿问

JavaScript:将函数作为参数传入,作为回调函数?

JavaScript:将函数作为参数传入,作为回调函数


慕斯王
浏览 719回答 2
2回答

慕哥9229398

调用函数时, 传递入的参数与顺序必须按照函数声明来排列, 所以调用doSomeThing时:123456789101112131415function doSomething(args,callback){   somethingComplicated(args);   callback();}//第一个参数如果不需要传递,可设置为null//function onEnd(){} 这种方法通常是声明一个函数, 将函数作为参数传递可直接传递函数名称,或者传递匿名函数//传递函数名称function onEnd(){//code}doSomething(null, onEnd);//传递匿名函数doSomething(null,function(){   compute();});

MYYA

你可以改写doSomething函数的实现,如果第一个入参是函数就认为是回调函数,要看你想实现什么功能。1234567function doSomething(args,callback){    somethingComplicated(args);    if(arguments.length==1 && 'function'==typeof args){        callback = args;    }    if(callback) callback();}
随时随地看视频慕课网APP
我要回答