[英]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.