0

我将 blob 对象存储在 chrome.storage.local 中,并增加键“0”、“1”、“2”等。对象的数量不固定。从“0”开始迭代地读取和处理它们的最佳方法是什么?(在没有处理前一个对象之前,我无法读取下一个对象)。

我知道可以使用以下代码获取所有对象:

chrome.storage.local.get(null, function(items) {
    //handle items
});

但就我而言,可能有很多 blob 文件,我不想一次在内存中处理它们。

4

1 回答 1

1

所以你只需要一个简单的循环,当你完成后,它会加载网络项目。简单的队列类型的系统。

(function() {

    var ind = 0;
    function getNextItem() {
        var data = chrome.storage.local.get("key" + ind, processItem);
        ind++;
    }

    function processItems(items) {

        if(!items) return;

        //do stuff here when done call next 

        getNextItem(); // call this whenever your processing is done

    }

    getNextItem();

}());
于 2016-12-13T13:39:00.720 回答