Node.js 将数据从nodeJS中的异步函数推送到数组

Node.js 将数据从nodeJS中的异步函数推送到数组,node.js,asynchronous,async-await,Node.js,Asynchronous,Async Await,我想将对象存储到数组中。我正在使用一个名为finnhub的包来搜索数据,现在我正在将空信息推送到数组中,并且需要async await(我想)的帮助以使其正常工作。这是我的密码: 路由器.get(“/execute”),异步函数(req,res){ let positions=[]; 试一试{ 让unixTimestamp=新日期(); 让今天=parseInt((新日期(unixTimestamp).getTime()/1000).toFixed(0)); 让两天=今天-(2*86400);

我想将对象存储到数组中。我正在使用一个名为finnhub的包来搜索数据,现在我正在将空信息推送到数组中,并且需要async await(我想)的帮助以使其正常工作。这是我的密码:

路由器.get(“/execute”),异步函数(req,res){

let positions=[];
试一试{
让unixTimestamp=新日期();
让今天=parseInt((新日期(unixTimestamp).getTime()/1000).toFixed(0));
让两天=今天-(2*86400);
让点火=[];
for(库存的常量){
stockCandles(股票,“1”,两天,今天,{},异步(错误,数据,响应)=>{
试一试{
let info=等待数据;
设total=0;
for(设i=0;i

}))

您需要创建承诺函数并执行它:

const executeAsync=async(股票,两天,今天)=>newpromise((res,rej)=>{
stockCandles(股票,“1”,两天,今天,{},异步(错误,数据,响应)=>{
试一试{
让信息=数据;
设total=0;
for(设i=0;i
为什么要执行
wait data
wait parseFloat
wait{}
?第一次收到语法错误:意外的标记“return”。删除了return,它就起作用了,你知道这意味着什么吗,我担心这个应用程序的未来开发以及它可能受到的影响。你能指引我去哪里吗?你的权利,我错写了返回,它的函数表达式,所以它不需要返回。不管怎样,这是一个承诺,读一读。
let positions = [];


try {
    
    let unixTimestamp = new Date();
    let today = parseInt((new Date(unixTimestamp).getTime()/1000).toFixed(0));
    let twoDays = today - (2 * 86400);
    let ignites = [];
    
    
    for(const stock of stocks) {
        
        finnhubClient.stockCandles(stock, "1", twoDays, today, {}, async (error, data, response)  => {
            try {
                let info = await data;
                
                let total = 0;
                for(let i = 0; i < info.h.length; i++) {
                    let barPriceChange = await parseFloat((info.h[i] - info.l[i]));
                    total += barPriceChange;
                }
                let ignite = await {symbol: stock, avgBar: total/info.h.length};
                
                ignites.push(ignite);
                

            } catch(err) {
                console.log("ERROR", err.message);
            }
        });
            
    }
    console.log(ignites);
    

    
} catch(err) {
    console.log("ERROR", err.message)
}