한글 byte길이 구하기

2023. 9. 15. 12:19카테고리 없음

반응형

JavaScript에서 한글 byte길이 구하기

UTF8에서는 보통 한글한글자당 3바이트로 계산한다.

// 한글은 UTF8에서 3바이트로 계산한다.
$.fncsize = function(str){
        var bts,ii,chr;        // 한글 3byte
        for(bts=ii=0;chr=str.charCodeAt(ii++);bts+=chr>>11?3:chr>>7?2:1);
        return bts;
};

한글을 파일 문자셋과 관련없이 2바이트로 계산

$.fnsize2 = function(str){
        var strLen = str.length;
        var cnt = 0;
        var oneChar = "";
       
        for(var ii=0;ii<strLen;ii++){
               oneChar = str.charAt(ii);
               if(escape(oneChar).length > 4) {
                       cnt += 2;
               } else {
                       cnt++;
               }
        }
        return cnt;
};

반응형