这就是我想要做的。
我有一个空数组
var send_data = [] ;
我正在使用" sync-each"在我之前的node.js的npm库中,我使用map回调函数进行了迭代,但遇到了相同的情况。
这是我的代码。
var each = require('sync-each');
client.execute(someQuery,[value],(err,data) => {
var items = data.rows;
each(items,(items,next) => {
// here I am performing some if-else queries and some Cassandra database queries and then pushing the value to my array send_data.
if(items.type == true) {
send_data.push({ value: items.message,flag:true });
}else{
send_data.push({value:items.message,flag:false});
}
},(err,transformedItems)=>{
if(err){
console.log(err);
}
});
});
我的程序运行良好而没有出现任何错误但是当我调出最终输出时,我得到了未列出的数组值列表,如
[{value:1},{value:3},{value:2},{value:4}]
有没有办法纠正这个问题?
答案 0 :(得分:1)
您可以使用对您的案例更有意义的map功能:
var items = [1,2,3,4];
var send_data = items.map((item)=>({value:item}));
console.log(send_data);