如何获取js异步请求返回值 Love The Way You Lie 2022-05-31 12:55 326阅读 0赞 使用定时函数模拟异步请求 * 回调函数 function doSomething(callback){ setTimeout(function(){ console.log('执行结束'); let result = 4; callback(result); },100); } function callback(result){ console.log('接收到结果为:'+result); } doSomething(callback); //doSomething((result)=>{console.log('接收到结果为:'+result)}); * 使用es6提供的Promise函数 function doSomething(){ return new Promise(function(resolve){ setTimeout(function(){ console.log('执行结束'); let result = 6; resolve(result); },100); }); } doSomething().then(result=>{ console.log('接收到结果为:'+result); }); * Generator函数 function doSomething(){ setTimeout(function(){ let result = 6; it.next(result); },100); } function *gener(){ var result = yield doSomething(); console.log(result); } let it = gener(); it.next(); * 使用es7新特性async function doSomething(){ return new Promise(resolve=>{ setTimeout(function(){ let result = 6; resolve(result); },100); }); } async function action(){ let result = await doSomething(); console.log(result); } action();
还没有评论,来说两句吧...