小编Abk*_*Abk的帖子

从回调函数返回一个对象,这样包装函数可以返回node.js/express中的同一个对象

我试图从通过调用第三方API获得的数据返回我正在构建的对象.我正在使用Request(https://github.com/mikeal/request)模块来完成相同的工作.

但是,我想从回调函数返回此对象.

我的请求调用是javascript函数的一部分,我希望这个外部函数能够返回新构造的对象.我遇到问题是由于node.js的非阻塞性质,每当我尝试从外部函数返回对象时,它返回一个空对象,因为回调函数尚未构造对象.

我怎样才能做到这一点?

function getData(url){

  var myWeatherData = new Object();
  var data;

  request(url, function (error, response, body) {

    if (!error && response.statusCode == 200) {

      data = JSON.parse(body);

      myWeatherData.locationName = data.current_observation.display_location.full;
      myWeatherData.weather = data.current_observation.weather; 
      myWeatherData.temperature_string = data.current_observation.temperature_string;
      myWeatherData.relative_humidity = data.current_observation.relative_humidity;
      myWeatherData.wind_string = data.current_observation.wind_string;
      myWeatherData.feelslike_string = data.current_observation.feelslike_string;

    }
    return myWeatherData; // THIS IS A RETURN FROM CALL BACK 
  });   
// return myWeatherDataArr; -- THIS RETURNS AN EMPTY 
};
Run Code Online (Sandbox Code Playgroud)

javascript node.js express node-request

1
推荐指数
1
解决办法
1458
查看次数

内连接和简单连接之间是否有任何性能差异?

内连接和简单连接之间有什么性能差异吗?即他们中的任何一个有更好的执行计划和/或执行时间吗?并且这两种方法总是会产生相同的结果集吗?

sql join

-1
推荐指数
1
解决办法
399
查看次数

标签 统计

express ×1

javascript ×1

join ×1

node-request ×1

node.js ×1

sql ×1