OKAYSO,我正在处理一些JSON数据并将其格式化为DOM,我正试图避免看起来像这样的东西...
var image1 = content.list.story[1].image[0].crop[1].src;
var image2 = content.list.story[1].image[0].crop[1].src;
var image3 = content.list.story[2].image[0].crop[1].src;
var image4 = content.list.story[3].image[0].crop[1].src;
为避免这种情况,我正在使用以下for循环
var count ;
for(count = 0; count < 1; count++){
console.log("content.list.story["+[count]+"].image[0].crop[1].src");
};
该代码打印
content.list.story[0].image[0].crop[1].src
完全应该如此。但是,当我将其格式化以打印实际资源时,就这样......
var count ;
for(count = 0; count < 1; count++){
console.log(content.list.story['+[count]+'].image[0].crop[1].src);
};
...它返回undefined。
知道我搞砸了什么吗?
答案 0 :(得分:3)
正确的代码是:
var count ;
for(count = 0; count < 1; count++){
console.log(content.list.story[count].image[0].crop[1].src);
};
你应该使用带索引的变量,在你的例子中,你已经把索引&#34; [count]&#34;正确的索引是&#34; 0&#34;。
答案 1 :(得分:1)
我认为您正在使用1到4的索引,并且您在循环中使用0。所以数组[0]是未定义的。
即使JSON索引从0开始,代码也应如下所示,注意使用&#34; story [count]&#34;不是故事[&#39; + [count] +&#39;]
var count ;
for(count = 0; count < 1; count++){
console.log(content.list.story[count].image[0].crop[1].src);
};
答案 2 :(得分:1)
尝试下面的代码:
var count ;
for(count = 0; count < 1; count++){
console.log(content.list.story[count].image[0].crop[1].src);
};