js api호출시 18자리수가 제대로 안넘어옵니다.
본문
uid":747734347340877829
총 18자리수의 숫자인데 16자리수까지 가져오고 그뒤로는 00으로 짤립니다.
var uid = BigInt(e.trader.uid);
DOMElements += "+uid+";
이와같이 찍어보면 18자리수까지 맞는거같은데
uid":747734347340877829
uid":747734347340877824
끝자리가 틀리게 가져옵니다.
1씩 반올림되거나 그런게 아닌 랜덤으로 마지막 숫자가 다른데 어떻게 처리해야 18자리수를 정상적으로
출력할수있나요?
!-->
답변 1
뭘찾다가 여길 오게 된지 기억은 나지 않지만, 해당 질문에 궁금하여 찾아보고
댓글 달아드리려고 본커뮤니티에 가입까지 했네요 ㅎㅎ;;
원인 : javascript에서 숫자형 표현범위를 2^53 (16자리 : 9,007,199,254,740,992) 벗어나기 때문에 발생
해결방안 : 숫자형 표현범위를 벗어난 변수는 String으로 변환하여 클라이언트로 전달하여 표시하면 된다.
출처: https://supremedev.tistory.com/30 [Supreme Dev]
답변을 작성하시기 전에 로그인 해주세요.