我有这个小方法。
$cargos = JSON.parse('<?php echo $cargos ?>');
$html = '';
console.log($cargos[0][0]); //correct printing of the desired values
for(var x=0;x <= $cargos.length;x++)
{
console.log(x); //this prints the numbers correctly
$html += "<option value='"+$cargos[x][0]+"'>"+$cargos[x][1]+"</option>"; //error, $cargos[x] is undefined
}
我正在使用JSON从PHP中检索(多维)数组,我打算用它做一个小循环但是在调用数组元素时我不能使用变量x
,因为我收到错误
TypeError: $cargos[x] is undefined
如果我尝试使用数字手动调用索引,它们会正确打印而不会出错。
我做错了什么?
答案 0 :(得分:0)
在Javascript中,数组的索引从零开始。因此,当从头到尾迭代数组时,您应该从索引0
遍历到length-of-array - 1
。您可以在循环的终止条件中使用<=
简单地替换<
,它应该可以正常工作。