使用sqlLite在Nodejs中的查询块之外获取变量

时间:2015-07-25 14:56:34

标签: javascript jquery node.js sqlite

我想存储从表到数组(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 个答案:

答案 0 :(得分:2)

因为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) }); 是一个异步函数,你需要使用另一个函数作为回调,如:

$(document).on('submit','#id_update_phone_number',function(){
    alert('Form Submitted');
    return false;
});

参考:Selenium/Python