Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/440.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 用于循环添加未定义的条目';s_Javascript - Fatal编程技术网

Javascript 用于循环添加未定义的条目';s

Javascript 用于循环添加未定义的条目';s,javascript,Javascript,我使用了几个for循环来创建一个数组。问题是,在第二个过程中,它添加了4个未定义的变量,我看不出它们来自哪里 注意:if语句是正确的,只有当它们匹配时才会被激发 守则: for (var x = 0; x < galleryObject[1].length; x++) { gallerys[x]= []; for (var i = 0; i < galleryObject[2].length; i++) { if (galleryObjec

我使用了几个for循环来创建一个数组。问题是,在第二个过程中,它添加了4个未定义的变量,我看不出它们来自哪里

注意:if语句是正确的,只有当它们匹配时才会被激发

守则:

for (var x = 0; x < galleryObject[1].length; x++) {
    gallerys[x]= [];    

    for (var i = 0; i < galleryObject[2].length; i++) {

        if (galleryObject[2][i].galId === galleryObject[1][x].id) {


            gallerys[x][i] = {};
            gallerys[x][i].filename=galleryObject[2][i].fileName
            gallerys[x][i].caption =galleryObject[2][i].caption


        }

    }
}
for(var x=0;x
显然,这里的问题在于,有时IF语句返回false。在这种情况下,它尝试向数组中添加一个元素,但没有指定以前的一些索引,因此它用“undefined”填充它们

尝试将IF语句中的代码更改为:

    if (galleryObject[2][i].galId === galleryObject[1][x].id) {
        gallerys.push({
                          filename:galleryObject[2][i].fileName,
                          caption :galleryObject[2][i].caption
                      });
    }

在添加警报之前尝试检查是的,我添加了控制台。日志无处不在,我看不出它为什么不起作用。然后代码中存在错误。尝试将所有代码放入注释中,然后尝试逐行删除注释非常感谢!您可能希望将这些
=
更改为
,并删除额外的