// 数据格式
objData: {
code: 0,
data: [
{
msg: "200",
data: [
{
name: "张三",
age: 18,
sex: "男"
}
]
},
{
msg: "200",
data: [
{
name: "张气",
age: 11,
sex: "男"
}
]
},
{
msg: "200",
data: [
{
name: "张五",
age: 12,
sex: "女"
}
]
},
{
msg: "200",
data: [
{
name: "张六",
age: 14,
sex: "女"
}
]
},
]
},
// 需求是想只拿到里面的name
遇到这种情况,对象嵌套数组,数组又嵌套对象...
那么for in方法是可以遍历对象的;而遍历数组的话可以用map(或者用其他的数组遍历方法)
for (let key in this.objData) { // 遍历对象
console.log(key); // 每一个属性
if(key == "data"){ // 只有属性是data
console.log(this.objData[key]); // 拿到每一个属性值(此时拿到的是一个数组了)
this.objData[key].map(item => { // 遍历数组
// 每个item又是一个对象,既然是对象就可以直接点语法或者中括号语法了
// item.data又变成一个数组了,因为里面只有一个值,那么数组的话直接[0]就可以拿到了
console.log(item.data[0].age); // 拿到了最里面的对象的age
return item.data[0].age;
// 可以拿个数组把age接收起来,完成这个对象与数组嵌套取值了
})
}
}