[JavaScript] 같은 듯 다른 parseInt() vs Math.floor()

핫걸코더지망생·2023년 5월 12일
post-thumbnail

🤔 궁금하네?

  • 회고조에서 코테를 풀다보면 다른 조원분과 같은 문제를 푸는 날이 있다.
    반환값을 도출하는 과정에서 소숫점 값을 정수로 바꾸기 위해 pasreInt() 를 사용한 내 것도 정답이고 Math.floor()를 쓴 다른 조원분 것도 정답이다.
    둘이 하는일이 같나? 그럼 같은 매서드가 왜 이름만 다르게 존재하지? 찾아보자


🤗 역시 같은 듯 다르구나

  • Math.floor() : 소수점 이하를 내림한 정수를 반환
  • parseInt() : 문자열을 분석하여 첫 번째 숫자를 반환하고 소숫점 아래를 버림

정의를 찾아봐도 잘 이해가 되지 않는다. 예시를 보면서 이해해 보자

  1. 양수를 반환하는 경우 (똑같다.)
  1. 음수를 반환하는 경우 (다른 값을 반환한다.)

Math.floor 는 소수점을 내림 했고, parseInt의 경우 소수점을 버린 값을 반환했기 때문에
값이 다르다.

🧐 결론

상황에 맞게 두 함수 중 하나를 골라쓰면 된다. 그런데 만약 양수로, 둘 다 사용할 수 있어서
하나를 사용해야 한다면 Math.floor더 빠르다고 한다.
이 경우 Math.floor() 를 선택하여 사용하기로 하자


📚참고자료: MDN
Math.floor()
parseInt()

profile
산은 산, 물은 물, 코드는 코드

0개의 댓글