我正在尝试访问数组中的数据,但是它不显示它,而是发送错误:
这是我的代码:
function formatErrorHtml(arrayToDisplay, error_name) {
var stringFormat = "";
for (var i = 0; i <= arrayToDisplay.length; i++) {
// console.log(arrayToDisplay[i].data.error);
var error = arrayToDisplay[i].data.error;
if(error === error_name) {
stringFormat += "Hello" + "<br />";
}
}
return stringFormat;
}
我想访问绿色矩形中的数据。
当我在console.log中显示arrayToDisplay[i].data.error
时,它可以工作。但这不在循环中。
如何正确访问数据?
arrayToDisplay[i].data.error
不正确吗?
任何想法将不胜感激,
答案 0 :(得分:3)
尝试将<=更改为< 我相信最后一个寻找dataToDisplay [9]
答案 1 :(得分:1)
JavaScript数组的索引为零:数组的第一个元素的索引为0,而最后一个元素的索引等于数组的length属性的值减去1。使用无效的索引号将返回undefined。
您的循环正在迭代数组中不存在的项目(在上一次迭代中):
更改i <= arrayToDisplay.length
到for循环中的i < arrayToDisplay.length
或i <= arrayToDisplay.length - 1
。