Skip to content

JavaScript id의 number 문제 #57

Description

@manudeli

Auto Increment로 DB 테이블의 id를 관리할 경우에 response데이터로 id들을 number로 주시면 JavaScript에서는 문제가 생길 거 같아요

JavaScript는 15자리의 숫자까지만 정확하게 표현할 수 있더라구요
그 이상은 근사치로 표현해요

예를 들어보면

const id = 18583954832404893483948943
const id = 18583954832404893483948944

// 위 두 가지 숫자 모두
console.log(id) // 1.8583954832404892e+25

로 표현 되더라구요

유저의 경우 문제 없겠지만 좋아요나 채팅처럼 다수가 생기는 데이터는 아이디로 number를 사용할 경우에 문제가 분명히 생긴다고 해요.

response에 data를 담기 전에 id를 string타입으로 변환해서 보낸다면 상기의 문제를 해결할 수 있지 않을까요?

facebook도 개발자도구에서 찍어보니 반환 id타입이 숫자string으로 반환하고 있네요 이런 부분을 고려한 것이 아닐까 싶어요

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions