Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.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 为什么';我的for循环是否在我的getJSON请求中执行?_Javascript_Jquery - Fatal编程技术网

Javascript 为什么';我的for循环是否在我的getJSON请求中执行?

Javascript 为什么';我的for循环是否在我的getJSON请求中执行?,javascript,jquery,Javascript,Jquery,我不确定这是否可能是由于异步执行。我的JavaScript知识非常有限,所以我无法确定为什么不工作,但在另一个网页上运行的是完全相同的结构。我还确保get请求找到了数据 $.getJSON(products_url, function(data) { // console.log(data) // has length 2 for (var i=0; i <= data.length; i++) { console.log(data[i]); } }

我不确定这是否可能是由于异步执行。我的JavaScript知识非常有限,所以我无法确定为什么不工作,但在另一个网页上运行的是完全相同的结构。我还确保get请求找到了数据

$.getJSON(products_url, function(data) {
//    console.log(data) //  has length 2
    for (var i=0; i <= data.length; i++) {
        console.log(data[i]);
    }
});
更新:解决方案 对于其他可能遇到这个问题的人,Vlaz回答突出了我的错误。数据是请求返回的对象。要访问数据本身,需要data.data。因此,正确的代码如下所示:

$.getJSON(products_url, function(data) {
//    console.log(data);
    for (var i=0; i <= data.data.length; i++) {
        console.log(data.data[i]);
    }
})
$.getJSON(产品、url、函数(数据){
//控制台日志(数据);

对于(var i=0;我可以向您发布
数据
?您在JS控制台中是否有任何错误?(F12)数据的类型是什么?数组还是JSON对象?这意味着
data
是一个具有名为
data
的属性的对象,而该属性是一个数组。因此,您需要
data.data.length
谢谢Vlaz!您的解决方案成功了。我没有注意到嵌套。
$.getJSON(products_url, function(data) {
//    console.log(data);
    for (var i=0; i <= data.data.length; i++) {
        console.log(data.data[i]);
    }
})