emoji
-
JS 글자 수 세기 문제Study/개발 2025. 2. 18. 23:16
글자 수 문제JS에서 글자 수를 validation을 하는 경우 보통 length를 사용한다.const MAX_LENGTH = 10;const validate = (value: string) => value.length 하지만, 아래 경우는 어떨까?validate('정답을 맞춰보세요😀');띄어쓰기 포함 10글자이지만, false를 출력하는것을 볼 수 있다.'정답을 맞춰보세요😀'.length; // 11emoji가 길이 2로 계산되기 때문이다.해결책[...'정답을 맞춰보세요😀'].length; // 10위와 같이 spread 연산자를 사용하면 결과가 10으로 정상적으로 나오는 것을 알 수 있다.원인문자열은 인덱싱, 길이연산 등에서 기본적으로 UTF-16 코드 유닛 기반으로 동작한다.'정답을 맞춰보세요..