기술 블로그
코테 정리 본문
반응형
JavaScript에서 문자열 비교와 숫자 정렬 문제 해결
JavaScript에서 숫자를 이어 붙여 가장 큰 수를 만들 때 주의해야 할 점과 효과적인 방법을 소개합니다.
1. 숫자로 변환 시 정밀도 손실
숫자가 매우 크면 Number
타입으로 처리할 때 정밀도가 손실될 수 있습니다. 따라서 큰 숫자를 직접 숫자로 변환해 비교하면 잘못된 결과가 나옵니다.
Number("11111112111111121"); // 11111112111111120 (정밀도 손실)
2. localeCompare()
로 문자열 비교
두 숫자를 문자열로 결합한 후 localeCompare()
로 비교해 사전식으로 정렬할 수 있습니다. 이 방식은 정확한 비교를 제공합니다.
("34" + "9").localeCompare("9" + "34"); // 1, "349"가 "934"보다 작음
이 방법을 통해 숫자 배열을 정렬해 가장 큰 숫자를 만들 수 있습니다.
반응형
'알고리즘' 카테고리의 다른 글
js heapq (0) | 2023.11.14 |
---|---|
[JS] 알고리즘을 위한 js - 2 문자열과 순회문 (0) | 2023.11.13 |
[JS] 알고리즘을 위한 js - 1 배열 (0) | 2023.11.13 |
[프로그래머스] 조이스틱 (0) | 2023.11.01 |
프로그래머스 체육복 (0) | 2023.10.26 |
Comments