나는 자료구조의 Map과 object를 정확히 몰랐다. 구글링을 통해 찾아보았다.
Map은 Key 자료형에 제약이 없다.
Map의 key 로 사용할 수 있는 데이터형: string, symbol(ES6), object, function >> number 는 사용할 수 없음에 주의!
Object key 로 사용할 수 있는 데이터형: string 과 symbol(ES6) 만 가능
=> 데이터 key가 모두 문자열로 구성되어 있어서object
로 사용할 수 있다.순회: Object (for-in), Map(for-of)
=> 데이터가 배열로 이루어져 있어 아이템 순회가 가능하고, 각각의 아이템 내에서는 key로 직접 value를 받아오기 때문에 순회가 필요하지 않다.Map.set/get 등 메소드를 사용할 수 있다.
⇒ Map 메소드를 쓰는게 오히려 번거롭고 헷갈릴 수 있다.
{
"kimchis": [ // 품목 데이터 [Array]
{ // 제품 정보 {object}
"id": number, // 데이터 유니크 넘버
"catergory": string, // 데이터가 포함된 카테고리명
"name": string, // 데이터 이름
"description": string, // 데이터 한줄평
"price": number, // 데이터 가격
"image": string, // 제품 이미지 url
"detail-image": string, // 제품 상세정보 이미지 url
"recipe-image": string // 제품 레시피 이미지 url
}
],
"comments": [ //김치상품 게시글안에 해당 댓글들 [Array]
{ // 댓글 정보 {object}
"nickname": string, // 작성자
"password": number, // 작성시 기입하는 암호
"content": string, // 내용
"date ": string // 작성 일자, 문자
}
],
"cart": [ // 장바구니[Array]
{ // 댓글 정보 {object}
"id": number, // 데이터 유니크 넘버
"count": number // 상품 갯수
}
]
}