问题描述
我想存储从表到array(arr)的所有行,我需要在定义的查询部分之外获取存储的数组。 有没有一种方法可以使db.each之外的所有行都可以继续操作。
var arr=[];
db.each("SELECT * FROM login", function(err, row) {
var title=row.title;
var context=row.context;
var newItem = {
'user': user,
'pwd': pwd
};
arr.push(newItem);
});
console.log(arr); //Outputs []
1楼
jessh
2
已采纳
2015-07-25 15:06:39
因为db.each
是异步函数,所以您需要使用另一个函数作为回调,例如:
var arr=[];
db.each("SELECT * FROM login", function(err, row) {
var title=row.title;
var context=row.context;
var newItem = {
'user': user,
'pwd': pwd
};
arr.push(newItem);
}, function(){
console.log(arr)
});
参考: :