登录
首页 >  文章 >  前端

JavaScript 回调函数异步执行问题:如何在 AppFrame.Http.Get 函数执行完毕后才返回?

时间:2024-11-05 20:09:59 490浏览 收藏

本篇文章向大家介绍《JavaScript 回调函数异步执行问题:如何在 AppFrame.Http.Get 函数执行完毕后才返回?》,主要包括,具有一定的参考价值,需要的朋友可以参考一下。

JavaScript 回调函数异步执行问题:如何在 AppFrame.Http.Get 函数执行完毕后才返回?

javascript 回调函数异步执行问题

在使用 javascript 时,遇到异步问题怎么办?以下是一段代码:

var beornoimgto = function(baiduurl) {
  var du;
  appframe.http.get(baiduurl, function(ret) { //为回调函数
    if (ret.status == "402") {
      du= "fukeyou";
    }
    else du= baiduurl;
  })

  return du;
}

问题是,调用 beornoimgto 函数后,appframe.http.get 函数还没执行完,就返回了。如何解决这个问题,让 appframe.http.get 执行完毕后再返回?

解决方法

无法直接修改代码让 appframe.http.get 执行完毕后才返回。可以尝试以下方法:

  • 在回调函数中将结果赋值给 beornoimgto 变量:
var beornoimgto = function(baiduurl) {
  appframe.http.get(baiduurl, function(ret) { //为回调函数
    if (ret.status == "402") {
      beornoimgto = "fukeyou";
    }
    else beornoimgto = baiduurl;
  })
}
  • 创建一个函数,将要执行的操作封装起来,然后在回调函数中调用:
function doSomething(beOrNoimgTo) {
  // 要执行的操作
}

AppFrame.Http.Get(baiduurl, function(ret) { //为回调函数
  if (ret.status == "402") {
    doSomething("fukeyou");
  }
  else doSomething(baiduurl);
})

以上就是《JavaScript 回调函数异步执行问题:如何在 AppFrame.Http.Get 函数执行完毕后才返回?》的详细内容,更多关于的资料请关注golang学习网公众号!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>