使用Array.map、Object.values、Object.keys处理对象中有对象,数组中有对象的情况
对象中有对象
const list = {
"1234567890": {
id: "1234567890",
name: "Nina Ricci",
},
"2345678901": {
id: "2345678901",
name: "Hello Kitty",
},
"3456789012": {
id: "3456789012",
name: "Pusheen the cat",
},
}
取得key的数组(阵列)
使用Object.keys
const idList = Object.keys(list);
idList // ["1234567890", "2345678901", "3456789012"]
取得value的数组(阵列)
- 使用Object.values取得误解的value组成数组
- 承上,使用Array.map将数组中的特定属性取出来,组成新数组后回传
const nameList = Object.values(list).map(item => item.name);
nameList // ["Nina Ricci", "Hello Kitty", "Pusheen the cat"]
数组中有对象1
const list = [
{
id: "1234567890",
name: "Nina Ricci",
},
{
id: "2345678901",
name: "Hello Kitty",
},
{
id: "3456789012",
name: "Pusheen the cat",
},
];
取得特性属性的数组
取得id
- 使用Array.map迭代数组,并将callback中的执行结果组成新阵列后回传
- 承上,在迭代数组过程中,使用Object.values取得第一个属性值,也就是id值
const idList = list.map(item => Object.values(item)[0]);
cosnt idList = list.map(item => item['id']);
idList // ["1234567890", "2345678901", "3456789012"]
取得name
const nameList = list.map(item => Object.value(item)[1]);
nameList // ["Nina Ricci", "Hello Kitty", "Pusheen the cat"]
数组中有对象2
const list = [
{
"1234567890": "Nina Ricci",
},
{
"2345678901": "Hello Kitty",
},
{
"3456789012": "Pusheen the cat",
},
]
取得key的数组
const idList = list.map(item => Object.keys(item)[0]);
idList // ["1234567890", "2345678901", "3456789012"]
取得value的数组
const nameList = list.map(item => Object.values(item)[0]);
nameList // ["Nina Ricci", "Hello Kitty", "Pusheen the cat"]