-
[코드스테이츠 43기/2022.12.27] javascript 계산기 구현코드스테이츠 43기 2022. 12. 27. 20:19
약 3일간 계산기구현을 했다.
처음 이틀은 목업을 만들고, 오늘은 버튼을 누르면 기능을 구현하게 만들었다.
html파일의 값을 js에서 받는(?) 부분
계산구현 계산을 구현하는 부분이다. 나누는건 적당히 소수점 다섯번째 쯤 가면 반올림 하게 구현했다.
넘버버튼 입력받았을때.
처음에 0일경우에는 입력한 숫자로 대체되어야 하고 그게 아닐경우에는 입력한 숫자가 추가되어야 한다.
또 operator를 누르고 숫자를 누르면 숫자가 그 숫자로 대체되어야 한다. 그부분 구현하는데 애를 좀 먹었다.
처음에는 previousKey 값을 두번째 숫자에만 주는 방법으로 진행했는데, 그렇게 하면 추가적으로 연산을 진행할 경우 해결되지 않아서 위와 같이 변경하였음
operator입력받았을때 코드가 좀 더러운것같아서 리팩토링해야할것 같다고 생각중이다.
우선은 firstNum이 있는 경우에는 이미 operator가 진행된경우이다.
이건 다시 이전에 입력한것이 number이냐(혹으 demical) operator이냐로 나눠서 계산을 수행함
소수점 눌렀을때 반응.
parseInt(정수형) parseFloat(소수형)의 차이를 이용해서, 정수형===소수형일때만 소수점이 추가되게 만들었다.
이전에 입력한것이 operator면 새로 0.을 입력하게 했다.
a/c버튼과 calculate버튼 구현
a/c는 값을 다 비운것이고
calculate의 경우는 firstNum이 비어있지 않은경우에 prerviousKey가 calculate인 경우와 previouskey가 calculate이 아닌경우로 나눴다,
firstNum이 비어있으면 작동하지 않는다.
/*앞으로 수정사항
코드리팩토링(특히 operator부분)
계산기 칸 넘어가는 것 수정 */
'코드스테이츠 43기' 카테고리의 다른 글
TIL 2022.12.31.(이번주) (0) 2023.01.01 [2022.12.29] TIL javascript 배열 함수들 (0) 2022.12.29 [코드스테이츠 43기/2022.12.22.] CSS 기초 (0) 2022.12.22 [2022.12.16/코드스테이츠 43기] (0) 2022.12.16 [코드스테이츠 43기/22.12.15] Section1 학습방법(OT) (0) 2022.12.15