javascript计算字符串的长度区分中英文

javascript计算字符串的长度区分中英文:
计算字符串的长度是常有的操作,代码如下:

var str="I love 蚂蚁部落";
console.log(str.length);

使用length计算字符串的长度,得出的结果是字符串中字符的个数,而在实际应用中可能需要计算字符串所占有的字节长度,一个汉字占两个字节,一个英文字符占一个字节,代码如下:

var zfl={}; 
zfl.GetLength=function(str){ 
  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; 
}
var str="I love 蚂蚁部落";
console.log(zfl.GetLength(str));

以上代码实现了我们的要求,能够区分汉字和英文单词,下面介绍一下它的实现过程。
一.实现原理:
原理很简单,判断当前字符的Unicode编码值是否在某一个指定的区间,通过这个区间就可以判断是汉字还是英文字符,如果是英文字符那就占一个字节,如果是汉字就占两个字节。
二.相关阅读:
1.for循环可以参阅javascript的for循环语句用法一章节。
2. charCodeAt()函数可以javascript的String对象的charCodeAt()方法一章节。

原文地址是:http://www.softwhy.com/forum.php?mod=viewthread&tid=11499

更多内容可以参阅:http://www.softwhy.com/javascript/

你可能感兴趣的:(javascript计算字符串的长度区分中英文)