setState는 화면을 그리기 전에 임시 저장공간에 값이 저장된다. prev를 이용하면 임시 저장 공간의 값을 가져올 수 있다.
작성한 코드가 규칙에 맞지 않으면 commit이 되지 않게 설정했다.