簡體   English   中英

如何循環一個多維數組並一次加載一個零件? -Javascript

[英]How can I cycle a multidimensional array and load one part at a time? - Javascript

我有一個非常大的多維javascript數組對象,具有許多地震的坐標。

像這樣:

var array_eq= [
            [
            0 : {
              "casa": "home",
              "lat": "30",
              "lng": "40"
              },
            //...//
            400 : {
              "casa": "home",
              "lat": "30",
              "lng": "40"
              }
            ],
           [
            0 : {
              "casa": "home",
              "lat": "30",
              "lng": "40"
              },
            //...//
            400 : {
              "casa": "home",
              "lat": "30",
              "lng": "40"
              }
            ]
           ];

因此,每個“陣列容器”包含400次地震。 所有陣列都可以發生超過120.000次地震。

它需要很長時間才能在google maps顯示所有google maps所以我試圖一一顯示“數組容器”(因此每400個)中的地震。

我試圖以這種方式循環數組:

 for(var f= 0; f < array_eq.length; f++){   
    for(var i= 0; i < array_eq[f].length; i++){ 
     //add erathquakes/markers on google maps
    }
 }

但是似乎沒有塊加載,因此陣列中的所有地震都被加載到一起。 這樣對用戶來說太長了....

你能給我一些建議嗎?

我可以使用ajax解決此問題嗎?

一種選擇是創建過濾器控制功能。 我已經用可能的解決方案更新了JSFiddle。 例如,我設置了一個filterTurma()函數,如下所示:

$ scope.filterTurma = function (user) {

// If the value is be !! '(value you are assigning to' Everyone '),
// just returned 'true' for all cases to continue showing up ...
if ($ scope.search_turma.turmas.value == '!!')
true return;

// Do the opposite, do the classes of the user, and verify that at least
// one suites matches an advanced class in the combobox ...
for (var i = 0; i <user.turma.length; i ++) {
var class = user.turmas [i];
if (turma.value == $ scope.search_turma.turma.value)
true return;
}

// if it matched, return 'false' to hide this user ...
returns false;
};

總結代碼,在您的組合中,您可以作為類,並且仍然是選項“每個人”,其值為“ !!”。 沒有過濾器,只需檢查是否在組合框中選擇了該項目的當前值,否則我們將檢查是否至少有一個類別對應於所選類別。 在您的HTML中,要應用此過濾器,只需執行以下操作:

tr ng-repeat = "user in dataUserAndTurma | filter: {name: search_nome} | filter: filterTurma"

請注意,我沒有在方法名稱中使用括號(這里的angularjs willenter代碼會在迭代中自動將當前用戶傳遞給該方法),此外,我保留了原始過濾器,即過濾器相互補充。

暫無
暫無

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

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