gpt4 book ai didi

javascript - Node.js 中的同步 for in 循环

转载 作者:太空宇宙 更新时间:2023-11-03 22:33:26 24 4
gpt4 key购买 nike

我正在使用 Express 框架使用 Node.js Web 应用程序,我需要从 mysql 数据库获取结果。我想得到同步结果。有可能的。请建议。例如:

result = [{id:4,is_parallel:'No',name:'Pankaj'},{id:5,is_parallel:'Yes',name:'uu'},{id:6,is_parallel:'No',name:'kk'}]
for(val in result){
if(result[val].is_parallel=='No'){
var parallelArray = {};
parallelArray.id = result[val].id;
parallelArray.name = result[val].name;
newArray.push(parallelArray);
console.log(newArray);
}else{
$sql ='select id,process_wf_id from process_workflow_parallel_branch where process_wf_id='+result[val].id+'';
connection.query($sql,
function(err, results) {
if(err){
callback(err,null);
}else{
if(results.length>0){
for(val in results){
//

}
}
}


});

}

}

最佳答案

只要您使用connection.query,就不可能同步接收结果,因为该函数是异步的,您无法避免它或强制它同步。此外,尽可能依赖异步是可行的方法,因为否则就会产生阻塞操作的风险(例如,writeFileSync),而这完全违背了node.js 是为了。

关于javascript - Node.js 中的同步 for in 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33322621/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com