Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[1단계 - 콘솔 기반 로또 게임] 초코(강다빈) 미션 제출합니다. #290

Merged
merged 39 commits into from
Feb 25, 2024
Merged
Changes from 1 commit
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
9bb5a9e
docs REQUIREMENTS.md 생성
vi-wolhwa Feb 20, 2024
656df6c
docs: test
00kang Feb 20, 2024
85feae0
docs: test 하기
00kang Feb 20, 2024
a1f4355
docs: 기능 구현 목록 작성
00kang Feb 20, 2024
e8c8231
chore: eslint, prettier 설정 및 package 정보 변경
00kang Feb 20, 2024
812e848
test: 구입 금액에 따른 로또 발행 테스트 작성
00kang Feb 20, 2024
8010ff6
chore: eslint 플러그인 재설치
vi-wolhwa Feb 21, 2024
725f690
feat: 구입금액에 따른 발행 수량 계산
vi-wolhwa Feb 21, 2024
916057e
feat: 랜덤 유틸 클래스 구현
vi-wolhwa Feb 21, 2024
d90568f
feat: 수량 만큼 로또 발행
vi-wolhwa Feb 21, 2024
6e11789
feat: 로또 객체 생성 및 번호 정렬
vi-wolhwa Feb 21, 2024
f689337
feat: 당첨 결과 분석, 순위 반환
vi-wolhwa Feb 22, 2024
3885553
style: printWidth 변경 (80 -> 100)
vi-wolhwa Feb 22, 2024
41e3459
feat: 당첨 결과 분석 및 순위 반환
vi-wolhwa Feb 22, 2024
be26777
refactor: 로또 등수 계산 로직 분리
vi-wolhwa Feb 22, 2024
e7aac4b
refactor: 상수명 변경
vi-wolhwa Feb 22, 2024
f9d2c32
feat: 콘솔 입력 구현
vi-wolhwa Feb 22, 2024
03ee900
feat: controller, model, view 연결
vi-wolhwa Feb 22, 2024
993ff65
feat: README.md 수정
00kang Feb 22, 2024
7cf4395
style: 입,출력 메시지의 스타일 수정
00kang Feb 22, 2024
6804840
feat: 로또 발행 메서드 컨트롤러에 연결
00kang Feb 22, 2024
ea9485a
fix: 컨트롤러에서 당첨번호 입력 기능의 inputWinningNumbers 메서드 수정
00kang Feb 22, 2024
a1eb586
fix: 당첨 통계 결과 반환 안되는 오류 수정
00kang Feb 23, 2024
21e5888
fix: 발행된 로또 오름차순 정렬하여 보여주도록 수정
00kang Feb 23, 2024
ff23a3a
feat: 실행결과 사진 포함하여 README.md 수정
00kang Feb 23, 2024
e1572cf
feat: 구입 금액에 대한 유효성 검사 진행 및 재입력받도록 추가구현
00kang Feb 23, 2024
de926bc
feat: 당첨 번호 입력에 대한 유효성 검사 진행 및 재입력받도록 추가구현
00kang Feb 23, 2024
788cbf0
feat: 보너스 점수 입력에 대한 유효성 검사 추가 구현
00kang Feb 23, 2024
cb70b91
feat: 게임 재시작 및 유효성 검사 추가 구현
00kang Feb 23, 2024
184aacf
feat: REQUIREMENTS.md 업데이트
00kang Feb 23, 2024
ed22aa4
refactor: 컨트롤러로 이동
00kang Feb 23, 2024
27c944d
refactor: 프로그래밍 요구사항에 맞게 eslint 재설치 및 수정
00kang Feb 23, 2024
1b86786
refactor: eslint max-params 규칙에 따라 수정
00kang Feb 23, 2024
b573410
refactor: eslint max-lines-per-function 규칙에 따라 LottoController 내의 메서드 분리
00kang Feb 24, 2024
c681e4a
refacotr: airbnb 컨벤션에 따라 isNan 대신 Number.isNan으로 수정
00kang Feb 24, 2024
dfe9bb0
refacotr: nullish coalescing operator(??) 사용으로 불필요한 비교 줄임
00kang Feb 24, 2024
e7b65d9
refactor: eslint max-params 규칙에 따라 객체로 묶는 수정
00kang Feb 24, 2024
979af80
feat:winningNumbers와 bonusNumber를 배열로 반환하여 당첨 결과 출력 오류 수정
00kang Feb 24, 2024
f501d39
refactor: eslint max-depth 규칙에 따라 메서드 분리
00kang Feb 24, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/util/validation/LottoNumbersValidator.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ class LottoNumbersValidator {
}

static validateIsInteger(numbers) {
if (!numbers.every((number) => Validation.isInteger(number) && !isNaN(number))) {
if (!numbers.every((number) => Validation.isInteger(number) && !Number.isNaN(number))) {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

기왕 수정한거 그냥 isNaN과 Number.isNaN의 차이점도 정리하고가면 좋겠네요~!

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

isNaN

  • 전달된 값이 숫자인지 확인하고, 만약 숫자가 아니라면 해당 값을 숫자로 변환한 후 NaN인지 확인
  • 따라서 숫자가 아닌 값들에 대해서도 true를 반환 가능

Number.isNaN

  • 전달된 값이 정말로 NaN인지 확인
  • 숫자가 아닌 값들에 대해서는 항상 false를 반환
isNaN("hello")         //true
Number.isNaN("hello")  //false

throw new Error(`${ERROR_MESSAGES.prefix}${ERROR_MESSAGES.isNotInteger(this.name)}`);
}
}
Expand Down