js判断字符串中的英文和汉字

有时需要判断一个字符是不是汉字,比如在用户输入含有中英文的内容时,需要判断是否超过规定长度就要用到。用 Javascript 判断通常有两种方法。

方法一

正则表达式,test()方法返回true 或 false。

function checkCh(str){
    var RegExp = new RegExp('[\u4E00-\u9FFF]','g');
    return RegExp.test(str);       
}

方法二

通过检测字符的unicode编码,编码大于255的即为汉字,下面函数检测字符串所占的字符数。

/*
* 汉字占两个字符,英文字母扎一个字符。
*/
function
checkCh(str){ var len = 0; for(var i = 0; i < str.length; i++){ if(str.charCodeAt(i) > 255){ len += 2; }else{ len++; } } }
原文地址:https://www.cnblogs.com/huntaheart/p/4154394.html