0
對於我的項目,我用express.js和redis.io作爲數據庫使用Node.js。現在我有一個查詢參數獲取資源。它應該給我持有特定書籍的圖書館的ID。但我不明白我的程序的處理順序。正如你在下面的代碼中看到的,我將庫數組3次打印到控制檯。Node.js | Express.js | Redis.io - 處理訂單
var express = require('express');
var bodyParser = require('body-parser');
var redis = require('redis');
var db = redis.createClient();
var jsonParser = bodyParser.json();
var app = express();
app.use(jsonParser);
app.get('/test', function (req, res) {
if (req.query.book != null) {
var book_id = req.query.book;
var libraries = [];
db.get('book:' + book_id, function (err, rep) {
var book = JSON.parse(rep);
var libs = book.libraries;
libs.forEach(function (val) {
libraries.push(val.id);
});
console.log("1.: " + libraries);
});
console.log("2.: " + libraries);
}
console.log("3.: " + libraries);
});
app.listen(1337);
這是導致我的控制檯:
2:
3:
1:1,4
有人能解釋一下嗎?爲什麼我的數組在第二點和第三點是空的?