簡體   English   中英

將參數傳遞給async.js任務

[英]Pass parameter to async.js task

我必須遍歷給定的JSON對象,並為其中的每個對象創建一個任務。 給定的任務也需要來自此JSON對象的信息,我想知道如何將這些信息傳遞給任務,以便在執行時可以使用。

構建我的任務數組:

var asyncScrapeTasks = [];
var resources = JSON.parse(body);
for(var i=0; i<resources.items.length; i++)
{
    asyncScrapeTasks.push(function (callback)
    {
        console.log(resources.items[i].id);
    });
}

執行我的任務:

async.parallelLimit(asyncScrapeTasks, 5, function() {
    callback(null, "Done");
});

我的問題:

現在console.log(resources.items[i].id); 返回undefined,這對我來說很有意義,因為在執行函數時尚不知道索引i,但是我想知道如何解決我的問題。

由於我沒有足夠的聲譽來添加評論,因此我正在寫答案。 抱歉。

使用paralleLimit是否有任何特定原因? 每個async.js都可以迭代收集並在每個項目上執行操作。 此函數並行地將函數iteratee應用於集合中的每個項目。 每個async.js

如果要限制操作: async.js eachLimit

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM