如何拿到对象数组中的某一对象的元素
- 在写一个简单的商品管理系统的时候,遇到了一个问题,我接口中需要传递的参数是一个role_id,但是我在页面上显示是角色名称
- 通过对filter()方法的使用,拿到对象数组中对象,
- 其中this.state.rolesInfo表示的是一个对象数组
- item是对象数组中的每一项(就是每一个对象)
- item._id是对象中的一个属性
通过传入的参数,判断拿到的参数和对象中的某个属性是否相等,进而拿到这个参数所在的对象,data就是经过筛选的后的对象数组
roleName=(role_id)=>{
// 获取对象数组中的,某一对象的元素
// 通过过滤,在不改变元数组的情况下
// 返回筛选后符合条件的数组
var data=this.state.rolesInfo.filter((item)=>{
return item._id===role_id
})
// 由于我的原数组一个对象数组,所以筛选后得到的数组
// 也是一个对象数组,可以通过map拿到对象数组中对象的元素
// 通过过滤,找到指定id的name值
// console.log(data)
return data.map((item)=>{
return item.name
})
}