<script language="javascript">function isChina(s){var patrn=/[\u4E00-\u9FA5]|[\uFE30-\uFFA0]/giif(!patrn.exec(s)){return false}else{return true}}</script>第三种方法
<script language="javascript">var str='中国'if(escape(str).indexOf("%u")<0){alert("没有包含中文")}else{alert("包含中文")}</script>escape对字符串进行编码时,字符值大于255的以"%u****"格式存储,而字符值大于255的恰好是非英文字符(一般是中文字符,非中文字符也可以当作中文字符考虑);indexOf用以判断在字符串中是否存在某子字符串,找不到返回"-1"。
1、使用正则表达式判断中文正则:[\u4E00-\u9FA5]英文正则:[A-Za-z]数字正则:[0-9]//验证是否是中文var pattern = new RegExp("[\u4E00-\u9FA5]+")var str = "中文字符"if(pattern.test(str)){alert('该字符串是中文')}//验证是否是英文var pattern2 = new RegExp("[A-Za-z]+")var str2 = "abcdefsgaaweg"if(pattern2.test(str2)){alert('该字符串是英文')}//验证是否是数字var pattern3 = new RegExp("[0-9]+")var str3 = "234234"if(pattern3.test(str3)){alert('该字符串是数字')}判断js 验证字符串里面有没有包含汉字:1、用正则表达式判断function CheckChinese(obj,val){var reg = new RegExp("[\\u4E00-\\u9FFF]+","g")if(reg.test(val)){alert("包含汉字!")}}2、用 Unicode 字符范围判断function chkstrlen(str){var strlen = 0for(var i = 0i <str.lengthi++){if(str.charCodeAt(i) >255) //如果是汉字,则字符串长度加2strlen += 2elsestrlen++}return strlen}