报错代码:
let list =${sessionScope.cateLogList};
//json转数组
let arr = [];
for (var i in list) {
arr[i]['catelogId'] = list[i].catelogId;
arr[i]['catelogName'] = list[i].catelogName;
console.log(arr[i]['catelogName']);
}
定义了一个数组,想将接收到的Json转为数组,但是遇到了Uncaught TypeError报错
报错原因
一开始以为是错在list上,排查后发现是因为数组没有提前定义
解决方案
提前给数组进行赋null值
let list =${sessionScope.cateLogList};
//json转数组
//提前对数组进行赋值
let arr = [{
'catelogId':null,
'catelogName':null
}];
for ( var i = 0; i<list.length;i++){
arr.push({
'catelogId':null,
'catelogName':null
});
}
for (var i in list) {
arr[i]['catelogId'] = list[i].catelogId;
arr[i]['catelogName'] = list[i].catelogName;
console.log(arr[i]['catelogName']);
}
问题解决