簡體   English   中英

在JavaScript中提高數組查找的效率

[英]Make array lookup efficient in JavaScript

我正在開發一個phonegap應用程序,在該應用程序中,我們獲取rss供稿並將其轉換為json並將其保存到“ .json”文件中的本地存儲中。 json數據文件包含幾個數組,這些數組通常存儲500到1000個元素。 為了在屏幕上處理和渲染數據,我經常不得不在數組中查找匹配的元素,其編碼如下:

for each array in arrys
    for each element in array
        if element.id=idToLookUp
            //do something

由於這種類型的迭代在應用程序中大量使用,因此運行緩慢。 如何通過在JavaScript使用有效的數據結構來優化此過程。 我可以使用一些第三方附庸風雅庫,例如Underscore.js等考慮應用程序是建立在PhoneGap的,運行於decenly的智能手機。

您可以將對象用作查找表。 例:

var lookup = {};
for (var i = 0; i < array.length; i++) {
  loopup[array[i].id] = array[i];
}

然后,您可以使用ID獲得商品:

var item = lookup[idToLookUp];

暫無
暫無

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

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