作为一个ReactJS新手,我试图解析RestfulAPI JSON响应,但是,我无法检索所有元素。尝试访问 text.subjects.code 和 text.subjects.description 时,它返回 null。但是,我可以成功地访问 text.id 和 text.name。
下面给出了 JSON 响应。
[
{
"id":95822,
"name":"Alex",
"subjects":[
{
"code": "101",
"description": "Course 101"
}
]
}
]
恳请指教。
您可以通过多种方式和几种方式进行迭代,我一直更喜欢使用 .forEach 和 .map
如果您需要新数组,请使用 .map。因为 map 返回一个新数组
const dataArray = text.subjects.map(subject => {
let obj = {};
obj.code = subject.code;
obj.description = subject.description;
return obj;
});
dataArray 将包含所有对象
还有一种不同的地图制作方式
const dataArray = text.subjects.map(subject => (
let obj = {};
obj.code = subject.code;
obj.description = subject.description;
return obj;
);
或者,如果您只想迭代数据,请使用 .forEach。 forEach 不返回数组
let array = [];
text.subjects.forEach(subject => (
let obj = {};
obj.code = subject.code;
obj.description = subject.description;
array.push(obj);
));
如果您检查主题是一个数组并且您没有从中获得值,请尝试text.subjects[0].code
因为主题是一个数组,你应该像下面这样map
主题:
text.subjects.map((subject) => {
console.log(subject.code, subject.description);
})
或者直接获取所需的索引,如下所示:
text.subjects[0].code