这是我的代码:
var Maria = require('mariasql');
c = new Maria({
host: '127.0.0.1',
user : 'root',
password : 'maria',
db : 'gim'
});
c.query('SELECT * FROM contact WHERE id = ? AND nom = ?', [4, 'dupont'], function(err, rows) {
if (err) {
throw err;
}
else {
function getResult() {
return rows;
}
}
});
c.end();
//get overs file
console.log(getResult());我想要结果数据,但是没有定义getResult()。
怎样才能得到node.js的结果呢?
发布于 2017-02-12 20:44:05
你的代码中有几个错误。
其中大部分与基本的JS编程概念有关。所以我建议你去找一些JS课程或教程。
getResult函数时,你是在一个函数的内部完成的。这意味着,这个函数只能在函数内部访问。getResult函数的函数,实际上是一个回调,它是一个在某个操作完成后立即执行的函数,通常是一个I/O密集型操作。c.query...,此时您提供了我们前面提到的回调,因此它可以继续执行其余语句,当c.query...带着记录返回时,执行作为结果的回调。但到那时console.log...已经被处死了。我不确定这是否是一个可以理解的答案,部分原因是我试图解释的概念对于您正在使用的语言来说是非常基本的,所以我再次建议从教程/课程开始。在CodeSchool和许多其他网站上也有一些很好的网站。
https://stackoverflow.com/questions/42187404
复制相似问题