【问题标题】:NodeJs function wait until callback return valueNodeJs函数等待回调返回值
【发布时间】:2019-07-25 19:02:55
【问题描述】:

我想在函数调用之外打印var a 的值。如果我运行这个程序,它会打印出undefined

var http = require('http');

var foo = function(req, res){
    var a = xyz('5',function(aa){
        console.log(aa);
        return aa;
    });
    res.end(a);
    console.log(a);
}

function xyz(arg,callback){
    var aa = 55;
    return callback(aa);
}

http.createServer(foo).listen(8000);
console.log('start server');

【问题讨论】:

标签: node.js


【解决方案1】:

让你的函数异步,然后等待 xyz()

var http = require('http');

var foo = async function(req, res){
  var a = await xyz('5'); 
  res.end(a);
  console.log(a);
}

function xyz(arg){
  var aa = 55;
  return aa;
}

http.createServer(foo).listen(8000);
console.log('start server');

【讨论】:

  • 如果您的问题解决了,别忘了接受答案
  • 如何设置对浏览器的响应?
猜你喜欢
  • 1970-01-01
  • 2016-10-16
  • 2012-07-02
  • 1970-01-01
  • 1970-01-01
  • 2010-09-27
  • 2011-08-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多