문자열 길이 계산 (영문 1 문자, 중국어 한자 2 문자)

2024 단어

방법1:
 
    
String.prototype.gblen = function() {  
  var len = 0;  
  for (var i=0; i    if (this.charCodeAt(i)>127 || this.charCodeAt(i)==94) {  
       len += 2;  
     } else {  
       len ++;  
     }  
   }  
  return len;  
}

방법2:

     function strlen(str){ 
    
    var len = 0;
    for (var i=0; i     var c = str.charCodeAt(i); 
    // 1 
     if ((c >= 0x0001 && c <= 0x007e) || (0xff60<=c && c<=0xff9f)) { 
       len++; 
     } 
     else { 
      len+=2; 
     } 
    } 
    return len;
}

방법 3:

     var jmz = {}; 
    
jmz.GetLength = function(str) {
  /// , 2, 1
  ///
  var realLength = 0, len = str.length, charCode = -1;
  for (var i = 0; i < len; i++) {
    charCode = str.charCodeAt(i);
    if (charCode >= 0 && charCode <= 128) realLength += 1;
    else realLength += 2;
  }
  return realLength;
};

메서드 4:

     var l = str.length;  
    
var blen = 0; 
for(i=0; iif ((str.charCodeAt(i) & 0xff00) != 0) { 
blen ++; 

blen ++; 
}

방법5: 더블 바이트를 두 개의 싱글 바이트로 바꾼 다음에 길이를 얻는다

     getBLen = function(str) { 
    
  if (str == null) return 0;
  if (typeof str != "string"){
    str += "";
  }
  return str.replace(/[^\x00-\xff]/g,"01").length;
}

전재 대상:https://www.cnblogs.com/vsmart/p/6306937.html

좋은 웹페이지 즐겨찾기