0720

clone coding
사용자 옵션 선택 → watchedOptions 변경 → findMatchingOption → currentMatchingOption
사용자 수량 입력 → watchedQuantity 변경 → 재고 차감 요청
장바구니에서는 이미 선택된 옵션에 대한 선택이니 그냥 flat화
만약 장바구니에서도 옵션을 변경할 수 있었다면 watchedOptions
JSON.stringify 문제점
- 문제상황
- 장바구니 선택 상품 옵션과 일반 상품 옵션 비교 시 발생한 이슈
- 발생한 문제는 아니고 잠재적 이슈엿음
- JSON.stringify 사용 시 문제점
- 문자열 변환 비용이 큼
- 객체 속성 순서가 보장되지 않아 같은 내용이어도 다르게 인식됨
- 근본적 해결책
- 관계형 DB 사용 (정규화된 테이블로 옵션 관리)
- DB에서 ORDER_BY로 항상 같은 순으로 정렬하면
- 성능도 최적화 되고 프론트에서 굳이 파싱할 이유도 없음
- 관계형 DB 사용 (정규화된 테이블로 옵션 관리)
- 프론트엔드에서의 임시 해결방법
- 배열 길이 비교 (기본 검증)
every()
함수로 모든 요소가 조건을 만족하는지 확인some()
함수로 option id 존재 여부 검증