javascript 글자 byte 계산

2023. 1. 12. 08:57카테고리 없음

728x90
<script>
// 글자수 체크 (한글 2 byte, 기타 1 byte)
// 글자수 체크 (한글 2 byte, 기타 1 byte)
// 글자수 체크 (한글 2 byte, 기타 1 byte)
String.prototype.getBytes = function() {
    const contents = this;
    let str_character;
    let int_char_count = 0;
    let int_contents_length = contents.length;
    for (k = 0; k < int_contents_length; k++) {
         str_character = contents.charAt(k);
        console.log("str_character : ", str_character );
        if (escape(str_character).length > 4)
            int_char_count += 2;
        else
            int_char_count++;
        }
    return int_char_count;
}
var text = "가나다라abc";
var cnt = text.getBytes();
console.log(" byte : ", cnt );
</script>
 

출력결과 

한글은 2byte, 영문은 1byte로 계산한다. 

핵심은 charAt() 함수이다.

문자열에서 특정 인덱스에 위치하는 유니코드 단일문자를 반환한다.

728x90