한 걸음씩

[프로그래머스][JS] 두 수의 합 본문

Programmers

[프로그래머스][JS] 두 수의 합

winter17 2023. 6. 12. 23:25

https://school.programmers.co.kr/learn/courses/30/lessons/181846

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

풀이 과정

function solution(a, b) {
    const calculate = BigInt(a) + BigInt(b)
    return calculate.toString();
}

Number, parseInt메서드 같은 경우는 64비트까지 표현할 수 있다. 때문에 64비트를 넘어가는 큰 수들은 근삿값으로 표현되어 원하지 않는 결과가 나온다. 이때 BigInt라는 데이터 타입을 사용할 수 있다. BigInt는 숫자 크기에 제한이 없다. 하지만 일반적인 숫자 연산에 비해 느릴 수 있다. 

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/BigInt

 

BigInt - JavaScript | MDN

BigInt 는 Number 원시 값이 안정적으로 나타낼 수 있는 최대치인 2^53 - 1보다 큰 정수를 표현할 수 있는 내장 객체입니다.

developer.mozilla.org


리뷰

BigInt라는 데이터 타입을 처음 알게된 문제이다.

처음에 보고 이게 왜 정답률 70%대 문제이지 했는데 BigInt 데이터 타입을 모르면 풀기 힘든 문제라서 그런 것 같다.