异步ajax如何获取返回值?

异步ajax设置返回值因为是异步 所以没获取到值就会返回
接收到的往往是undefined
那么把异步改成同步以外
有没有什么方法可以获取异步的ajax
我本来的思路是接受函数给个async 然后调用语句加awiat
但是获取的是promise之类的东西 
并没有获取到数据
异步怎样获取返回值呢?
在不使用框架的情况下 原生js有没有办法解决?

翻过高山走不出你
浏览 1198回答 2
2回答

梵蒂冈之花

闭包function a1(data){    console.log(data)}$.ajax().done(function(data){    a1(data)})可以用es6的Generator改造promise为同步 co.js就是这样做的 co简写:function co(generator) {  return function(fn) {    var gen = generator();    function next(err, result) {        if(err){            return fn(err);        }        var step = gen.next(result);        if (!step.done) {            step.value(next);        } else {            fn(null, step.value);        }    }    next();   }}co(function * () {    var data= yield $.ajax('a.json');    //同步写法    console.log(data);})
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript