-
001_JS_Object 타입에서 원하는 값 찾고 바꾸기> 기초/도와줘요! 2022. 6. 20. 18:09
state.form.userType = Object.values(state.form.userType).filter(i => i !== param).reduce((a,v)=>({ ...a, [v]: v}), {})
설명:
state.form.userType 이라는 Object 타입을 Array로 변경하고, filter()를 사용해서 들어오는 param값과 값을 하나씩 비교해서, 동일하지 않은 경우, reduce를 통해서 Custom Key-Value Pair로 만들어 기존에 Array로 만들어진 걸 Object로 변경
2.
if ( state.resultSet.hasOwnProperty(id) ) { if (state.resultSet[id] !== value) { state.resultSet = { ...state.resultSet, [id] : value } } else { state.resultSet = Object.keys(state.resultSet).filter(i => i != id).reduce((a, v) => ( { ...a, [v] : value } ), {}) } } else { state.resultSet = { ...state.resultSet, [id] : value } }
설명:
Object 안에 id가 있을 경우, (1번째 줄)
1. 이미 들어있는 값이 (결과값) 새로 들어오는 값과 다르면, 새로 들어오는 값으로 덮기
2. 이미 들어있는 값이 (결과값) 새로 들어오는 값과 같으면,초기화
Object 안에 id가 없을 경우
1.새로 들어오는 값을 삽입
'> 기초 > 도와줘요!' 카테고리의 다른 글
TIL-2024.07.04 - TIPS - 다중 commit 하나로 합치기 (0) 2024.07.04 TIL-2024.07.01 - TIPS - React + Docker + Nginx + Git Action (0) 2024.07.01 TIL-2024.04.14 - TIPS - Map() sort 방법 (value 먼저 key 다음) (0) 2024.04.14 TIL-2024.02.16 - Tips - .sort() 와 .sort((a,b) => a-b)) 차이 (0) 2024.02.16