Javascript 返回值在node.js回调函数中未定义
我正在node.js中编写一个回调函数,但它返回一个未定义的值。下面是代码Javascript 返回值在node.js回调函数中未定义,javascript,node.js,Javascript,Node.js,我正在node.js中编写一个回调函数,但它返回一个未定义的值。下面是代码 exports.getRecord = (function(callback) { return function(req, res) { var recordName; DBObject.record.find(jsonString, function(err, doc_record) { doc_record.forEach(function(docRe
exports.getRecord = (function(callback) {
return function(req, res) {
var recordName;
DBObject.record.find(jsonString, function(err, doc_record) {
doc_record.forEach(function(docRecordTravel) {
recordName = callback(docRecordTravel.recordCode);
console.log(recordName);
})
}
})(callbackFunc);
function callbackFunc(recordCode) {
var recordName;
DBObject.var_recordRack.find({
recordID: recordCode
}, function(err, record) {
record.forEach(function(recordLoop) {
recordName = recordLoop.recordName;
});
console.log("callback " + recordName);
return recordName
});
}
在callbackFunc中,它向我显示recordName,但当我返回它时,它显示undefined。如何在node.js的callbacks中返回值。您不能
它使用回调函数,因为它是异步的
调用回调时,上一个函数已经完成,没有地方可以返回值
如果要对数据执行某些操作,则必须从回调函数执行。请查看。不要让AJAX的角度影响你:问题是一样的。