[英]How can we use inner variable from function calling in node js at outside?
var limit = 0;
Settings.find({ settings: "settings" }, function (err, docs) {
limit=docs[0].keywords; //6
console.log('Limit from Inner : ' + limit);
});
console.log('Limit from Out : ' + limit);
它会给我类似以下的输出:“从外部限制:0从内部限制:6”
我想先调用内部,然后调用:“ Limit from Out:6 Limit Inner:6”
Node.js是异步的, console.log('Limit from Out : ' + limit);
在调用Settings.find()
的回调之前执行。
如果必须执行您描述的操作,则可以使用一些控制流库,例如https://github.com/caolan/async,并执行以下操作:
var limit = 0;
async.series([
function(callback) {
Settings.find({ settings: "settings" }, function (err, docs) {
limit=docs[0].keywords; //6
console.log('Limit from Inner : ' + limit);
callback(err);
});
}
], function(err) {
console.log('Limit from Out : ' + limit);
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.