js判断汉字和英文字符串的长度的方法

在js中用str.length计算字符串(英文或中文)的长度。js会把一个汉字当成1个字符计算。为了避免此错误,在此提供一个js获取字符串的方法,方便以后项目中直接调用。(兼容个浏览器)

 

 
  
  1. <script> 
  2. function countCharacters(str){ 
  3.     var totalCount = 0; 
  4.     for(var i=0; i<str.length; i++){ 
  5.         var c = str.charCodeAt(i); 
  6.         if ((c >= 0x0001 && c <= 0x007e) || (0xff60<=c && c<=0xff9f)){ 
  7.              totalCount++; 
  8.         } 
  9.         else{      
  10.             totalCount+=2; 
  11.         } 
  12.      } 
  13.     return totalCount; 
  14.  
  15. var a='汉字'
  16. var b=countCharacters(a); 
  17. alert(b); 
  18. </script> 

结果:4