JAVASCRIPT 验证计算中英文混合字符串长度的解决

方法一:采用escape函数

折叠展开javascript 代码复制内容到剪贴板
  1. function cnLength(Str) {   
  2.     var escStr = escape(Str);   
  3.     var numI = 0;   
  4.     var escStrlen = escStr.length;   
  5.     for (i = 0; i < escStrlen; i++)   
  6.         if (escStr.charAt(i) == '%')   
  7.         if (escStr.charAt(++i) == 'u')   
  8.         numI++;   
  9.     return Str.length + numI;   
  10. }   

方法二:使用正则匹配中文,将每个中文替换成两个逗号后计算长度

折叠展开javascript 代码复制内容到剪贴板
  1. function getLength(str) {   
  2.            return str.replace(/[^\x00-\xff]/g, '..').length;   
  3.        }  

方法三:判断字节数

折叠展开javascript 代码复制内容到剪贴板
  1. function fucCheckLength(strTemp) {   
  2.     var i, sum;   
  3.     sum = 0;   
  4.     for (i = 0; i < strTemp.length; i++) {   
  5.         if ((strTemp.charCodeAt(i) >= 0) && (strTemp.charCodeAt(i) <= 255)) {   
  6.             sum = sum + 1;   
  7.         } else {   
  8.             sum = sum + 2;   
  9.         }   
  10.     }   
  11.     return sum;   
  12. }  

 

posted on 2014-10-11 19:17  想飞的小丑鱼  阅读(639)  评论(0编辑  收藏  举报

导航