데이터를 reducer에 저장할 때는, object의 형태로 저장하는 것이 좋고, JSX로 데이터를 뿌릴때는 map을 사용하기 위해서 Array형태로 변환해야 한다.
mapKeys(array: Array<{}>, key: string)
return Value : Object<{}>
: lodash의 function으로 Array<{}>형태의 데이터를 key값의 object로 빼내어 Array를 Object형태로 변환하는 것
let array = [
{
id: 1,
name: "cho",
age: 34,
},
{
id: 2,
name: "park",
age: 30,
},
{
id: 3,
name: "heo",
age: 25,
},
{
id: 4,
name: "nam",
age: 39,
},
];
_.mapKeys(array, "id");
/* result
{
"1": {
"id": 1,
"name": "cho",
"age": 34
},
"2": {
"id": 2,
"name": "park",
"age": 30
},
"3": {
"id": 3,
"name": "heo",
"age": 25
},
"4": {
"id": 4,
"name": "nam",
"age": 39
}
}
*/
Object.values(obj: Object)
return Value : Array<{}>
: object의 value값만 빼내어, Array로 변환하는 것
: key값이 숫자로 되어 있으면, 숫자순으로 정렬되어 array로 들어가게 된다.
let obj = {
1: {
id: 1,
name: "cho",
age: 34,
},
2: {
id: 2,
name: "park",
age: 30,
},
3: {
id: 3,
name: "heo",
age: 25,
},
4: {
id: 4,
name: "nam",
age: 39,
},
};
Object.values(obj);
/*result
[
{
"id": 1,
"name": "cho",
"age": 34
},
{
"id": 2,
"name": "park",
"age": 30
},
{
"id": 3,
"name": "heo",
"age": 25
},
{
"id": 4,
"name": "nam",
"age": 39
}
]
*/