异步模式下,获得数据的时间点通常具有不确定性,在封装异步方法时,通常要用到委托来达到返回数据和操作数据的目的。
异步请求中委托一般通过高阶函数来实现(函数作为参数传递或函数作为返回值返回)。
var mytest = function(vars){ console.log(vars+"作为参数传入"); } function showDemo(foo) { foo("demo:"); } showDemo(mytest);
通过委托实现异步请求方法的封装:
var getInfo = function(url,articleId,callBack){ $.ajax(url+"?id="+articleId,function(data){ if(typeof callBack == "function"){ callBack(data); } }); } getInfo("https://blog.mosang.net",2856,function(data){console.log(data)});