본문 바로가기
02_STUDY/React

[ React ] 카운트 값을 감소하는 함수, 음수값이 나오지 않도록 만들기

by zestlumen 2023. 8. 27.

온도나 좌표 같은 값이면 모를까,

음수 값은 예기치 않는 버그나 오류를 발생시킬 수 있고

계산을 복잡하게 해서 프로그래밍에서는 음수값을 피하는 경우가 많다.

 

 

카운트 값을 감소하는 함수에서 음수값이 나오지 않도록 하는 방법을 알아보자.

 

 

1. 조건문

조건문을 사용해 count가 0보다 클 때만 setCount를 호출하여 값을 감소시키기

 

const decreaseCount = () => {
	if(count > 0){
    	    setCount(count - 1);
    }
};

 

 

2. 삼항 연산자

삼항 연산자를 사용하여 0보다 크면 감소시키고 아니면 0으로 만들기

 

const decreaseCount = () => setCount(count > 0 ? count - 1 : 0);

 

 

 

 

3. Math.max()

setCount에 값을 전달하기 전에 Math.max()메서드를 사용해 미리 확인하고 값을 전달하기.

Math.max()는 주어진 인수 중 가장 큰 값을 반환한다.

그래서 아래처럼 사용하면 count-1이 음수가 되어도 0을 반환한다.

 

const decreaseCount = () => {
    const newCount = Math.max(count - 1, 0);
    setCount(newCount);
};