JSはテキストバイト長を取得します.

1074 ワード

テキストのバイト長を取得するには、まず中国語が2バイト、英語が1バイトを占めることを知っています.
//        
function getLength(val) {
	var bytesCount = 0;
	if(val && val.length>0){
		var str = new String(val);
		for (var i = 0 ,n = str.length; i < n; i++) {
			var c = str.charCodeAt(i);
			if ((c >= 0x0001 && c <= 0x007e) || (0xff60<=c && c<=0xff9f)) {
				bytesCount += 1;
			} else {
				bytesCount += 2;
			}
		}
	}
	return bytesCount;
}
function(str) {
  var realLength = 0, charCode = -1;
  if(str){
      for (var i = 0; i < str.length; i++) {
        charCode = str.charCodeAt(i);
        if (charCode >= 0 && charCode <= 128) 
           realLength += 1;
        else
           realLength += 2;
      }
  }
  return realLength;
}
 
 
function(str){
    var blen = 0;
    if(str){
        for(i=0; i
function(str) {
  //              ,     
  return str.replace(/[\u0391-\uFFE5]/g,"aa").length;  
}