1

如何范围 datat ?这里 datat 是空的。我想把数据放在一个var中,这样我就可以在函数之外使用它。

var datat;
twit.search('#louieck', {include_entities:true,page:paget,maxid:maxidt}, function(data) {

// and output to the console:

datat =  data;

});
sys.puts(sys.inspect(datat));

问候

比西埃

4

1 回答 1

2

'datat' 的范围在您的函数之外。twit.search 是异步的,因此在您使用 sys.inspect 检查“datat”之前可能不会返回“data”。

这应该让您看到数据:

var datat;
twit.search('#louieck', {include_entities:true,page:paget,maxid:maxidt}, function(data) {

    // and output to the console:
    datat =  data;
    sys.puts(sys.inspect(datat));

});

但理想情况下,你会使用这样的回调......

var datat;
var callback = function(d){
    sys.puts(sys.inspect(d));

    datat = d;
    // do something more with datat

};

twit.search('#louieck', {include_entities:true,page:paget,maxid:maxidt}, function(data) {

    callback(data);

});

编辑- 根据评论简化...

var datat;
var callback = function(d){
  sys.puts(sys.inspect(d));
  datat = d;
  // do something more with datat
};
twit.search('#louieck', {include_entities:true,page:paget,maxid:maxidt},callback(data));
于 2013-03-22T12:35:18.920 回答