我试图在连接查询中声明一个变量以使其起作用。
var chk = cont.query("SELECT * FROM `points` WHERE name = '"+ usr +"'", function(rows) {
var row = rows;
res.send(row);
});
console.log(row[0].amount);
它返回此错误:ReferenceError: row is not defined
如何成功完成此任务。
答案 0 :(得分:0)
var chk = cont.query("SELECT * FROM `points` WHERE name = '"+ usr +"'", function(rows) {
var row = rows;
console.log(row[0].amount)
res.send(row);
});
您无法在声明它的函数之外访问row
变量。即使您在全局(回调之外)声明row
,它也不会起作用,因为您发布的代码是异步执行的。查询回调函数在代码console.log(row[0].amount);
之后执行,因此您无论如何都不会有行引用。
显然,如果您发布的代码段是完整代码,则根本不需要声明row
变量。