Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何循环多维数组并一次加载一个部件?-Javascript_Javascript_Arrays_Ajax_Performance_Loading - Fatal编程技术网

如何循环多维数组并一次加载一个部件?-Javascript

如何循环多维数组并一次加载一个部件?-Javascript,javascript,arrays,ajax,performance,loading,Javascript,Arrays,Ajax,Performance,Loading,我有一个非常大的多维javascript数组对象,它的坐标是很多地震的坐标 像这样: var array_eq= [ [ 0 : { "casa": "home", "lat": "30", "lng": "40" }, //...// 400 : { "casa

我有一个非常大的多维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个地震。 所有阵列都可能有超过120000次地震

googlemaps
中显示所有地震需要很长时间,因此我尝试在“数组容器”(因此每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
    }
 }
for(var f=0;f
但似乎没有块体加载,这样阵列中的所有地震都加载在一起。 这样对用户来说太长了

你能给我一些建议吗


我可以使用ajax解决这个问题吗?

一个选项是为过滤器控件创建一个函数。我已经用一个可能的解决方案更新了JSFIDLE。例如,我设置了一个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;
};

请注意,我没有在方法名称中使用括号(angularjs将在此处输入代码,自动将迭代中的当前用户传递给该方法),此外,我保留了原始过滤器,即过滤器相互补充)。

因此,您有400 x 120000个项目,您想为每个项目添加一个标记吗?这是4800万个标记。nono是120000次地震,分为400个部分。数据库中有1700000次地震,理论上,用户可以显示所有这些地震。你确定你的答案是正确的吗?我不明白你的代码,也不知道你能帮我什么……我不明白你的代码,我不知道你能帮我什么忙。这个“答案”与这个问题毫无关系。甚至不涉及任何角度。另外,
true返回
的语法无效。好的,很抱歉尝试提供帮助,我当时没有正确解释问题。。
tr ng-repeat = "user in dataUserAndTurma | filter: {name: search_nome} | filter: filterTurma"