js 函数怎么return Ajax 的值

function get Xx(){
    //此处调用ajax 请求
    当请求成功
    if (ret){
        return ret.xx;
    }
}

使用var x = getXx();这样调用后,x = undefined
要怎么样才能这样调用把异步请求的到的结果返回过来

阅读 3.7k
2 个回答

callback 或者 promise

// callback
function get Xx(cb){
  //此处调用ajax 请求 当请求成功
  if(ret){
    cb(ret)
    return ret.xx;
  }
}
// promise
function getXx(){
  return new Promise((resolve, reject) => {
    //此处调用ajax 请求 当请求成功
    if(ret){
      resolve(ret)
    }
  })
}

getXx().then((ret) => {
  // 请求成功的结果
  console.log(ret)
})

你可以使用async函数,在里面await后返回值,但最终得到的是一个promise。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题