반응형
쇼핑몰 상세 페이지 Select에서 값을 선택했을 때
아래 영역에 값이 추가되도록 하려고 한다
const onChange = (input, option) => {
setOptionValue([...OptionValue, option.value])
}
위 코드에서처럼 state에 데이터를 넣어서 가져오면
이렇게 데이터가 계속해서 추가되기 때문에
배열에 이미 특정 데이터가 포함되어 있는지 여부를 확인하고 없을 경우에만 추가하도록 해보자
① includes()
includes() 함수는 배열이 특정값을 포함하고 있는지 여부를 boolean 값으로 반환한다
See the Pen 배열에서 특정값 포함 여부를 반환하는 includes 함수 by shab8 (@shab8) on CodePen.
includes() 함수를 이용해서 아래와 같이 처리했다
const onChange = (input, option) => {
if(OptionValue.includes(option.value) === false) {
setOptionValue([...OptionValue, option.value])
} else {
alert("이미 선택한 옵션입니다")
}
}
반응형
'JavaScript' 카테고리의 다른 글
[#. JavaScript] 숫자 금액 세 자리 콤마 , 표시하기 (0) | 2021.02.18 |
---|---|
[#. JavaScript] slice() vs splice() 차이점을 알아보자 (0) | 2021.02.16 |
[#. JavaScript] Date() 날짜 함수 YYYY-mm-dd HH:mm:ss format 형식으로 표기하기 (0) | 2021.01.25 |
[#. JavaScript] forEach와 map의 차이점을 알아보자 (0) | 2021.01.15 |
[#. JavaScript] 정규표현식을 이용해서 input 입력 폼에서 소수점 첫째 자리까지만 입력할 수 있도록 막기 (0) | 2020.11.30 |