为什么我的变量解析为未定义
async JS: why does my variable resolve to undefined?
我从数据库中获取数据。这工作。
然而,我的代码流有问题,我认为它与async有关:为什么facturasDotaciones[](几乎最后一行代码)解析为未定义?
//npm sql DB access module (https://www.npmjs.com/package/mssql)
var sql = require('mssql');
//sql config object (username, password, etc)
var config = {
bla, bla, bla
}
function traerFacturasDotaciones(){
var request2 = new sql.Request(connection);
request2.execute('seleccionarFacturasCorreosDotaciones', function(err, response, returnValue) {
function peluquiarFacturas(facturas){
for(var i=0;i<facturas[0].length;i++){
facturas[0][i]["CO"]=facturas[0][i]["CO"].trim();
}
return facturas;
}
return peluquiarFacturas(response);
});
}
//get data from server and clean up
var connection = new sql.Connection(config, function(err) {
var request = new sql.Request(connection);
request.execute('seleccionarTiendas', function(err, tiendasRet, returnValue) {
var facturasDotaciones=[];
facturasDotaciones=traerFacturasDotaciones();
console.log("facturasDotaciones", facturasDotaciones);
});
});
traerFacturasDotaciones()不返回任何内容。它调用request2。Execute,它调用一个传递响应的回调函数。一种选择是将facturasDotaciones作为参数传递给traerFacturasDotaciones,并在该函数中设置值,但即使这样,它也会以一种灵活的方式分配。浏览请求。
函数traerFacturasDotaciones不返回任何东西。注意,返回语句是作为request2.execute的第二个参数给出的回调函数。但是那个回调是异步执行的,你的函数traerFacturasDotaciones在回调执行之前就结束了。
相关文章:
- 在不破坏未定义函数的情况下,对多个视图使用单个js文件
- JSON偶尔未定义-我该如何检查
- setInterval调用具有未定义参数的函数
- JSHint 错误:未定义我的应用程序 (W117)
- 在 javascript 中返回未定义值的单选按钮
- 更改 Javascript 对象中所有未定义变量的值
- 使用 RESTful API,如果未定义特定的响应 json 级别,我如何在客户端不出错
- 无法仅在活动服务器上读取未定义错误的属性“top”
- 查找未定义值的所有对象
- 未定义类型的数据没有值
- 具有null或未定义值的JavaScript字符串串联行为
- 检查链接对象形式中未定义属性的最佳实践是什么
- RequireJS 2.0-定义我的Backbone.Return
- 单击未定义数量的对话框
- 网络浏览器正在成为“;严格的“;用于Javascript中未定义变量的操作
- $ 未在我的 JavaScript 控制台中定义
- 函数未定义..我的函数调用不起作用
- 为什么我在chrome中得到未定义函数的错误
- 为什么我得到“未捕获的类型错误:无法读取未定义(...)的属性'长度'".
- 为什么我得到未定义错误的属性