js如何判断字符是中文,英文,数字还是字符

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js如何判断字符是中文,英文,数字还是字符相关的知识,希望对你有一定的参考价值。

需要准备的材料分别有:电脑、html编辑器、浏览器。

1、首先,打开html编辑器,新建html文件,例如:index.html。

2、在index.html中的<script>标签,输入js代码:

document.body.innerText = test('测');

function test(t)

var a = [

'reg':/[^/u4e00-/u9fa5]/, 'name':'中文',

'reg':/[^0-9]/, 'name':'数字',

'reg':/[^A-Za-z]/, 'name':'英文',

];

for (var i = 0; i < a.length; i++)

if (a[i].reg.test(t))

return a[i].name;

return '字符';

3、浏览器运行index.html页面,此时会打印出js判断的结果。

参考技术A

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('该字符串是数字');

参考技术B //判断中文
funtion isChinese(param)
    var regExp = /[^/u4e00-/u9fa5]/;
    if(regExp.test(param))
        return false;
    return true;
 //判断字母(英文)   
 function isEng(param)
     var regExp = /[^A-Za-z]/;
     if(regExp.test(param))
        return false;
    return true;
 
 //判断数字或字符
 function isNum(param)
     var regExp = /[^0-9]/;
     if(regExp.test(param))
        return false;
    return true;
 

参考技术C 正则表达式就可以了 参考技术D

JS中的变量是松散类型(即弱类型)的,可以用来保存任何类型的数据。

typeof 可以用来检测给定变量的数据类型,可能的返回值:1. 'undefined' --- 这个值未定义;

2. 'boolean'    --- 这个值是布尔值;

3. 'string'        --- 这个值是字符串;

4. 'number'     --- 这个值是数值;

5. 'object'       --- 这个值是对象或null;

6. 'function'    --- 这个值是函数。

 var aa = 'test string';   
           alert(typeof aa);  // 'string'   
           alert(typeof 90);  // 'number'

 但是要判断是中文,英文,数字还是字符,那你就只能用正则了。

js判断是不是有中文字符的方法大全

");return false;return true;第二种方法(包含中文则返回"true",不包含中文则返回"false"):
<script language="javascript">function isChina(s)var patrn=/[\\u4E00-\\u9FA5]|[\\uFE30-\\uFFA0]/gi;if(!patrn.exec(s))return false;elsereturn true;</script>第三种方法
<script language="javascript">var str=\'中国\';if(escape(str).indexOf("%u")<0)alert("没有包含中文");elsealert("包含中文");</script>escape对字符串进行编码时,字符值大于255的以"%u****"格式存储,而字符值大于255的恰好是非英文字符(一般是中文字符,非中文字符也可以当作中文字符考虑);indexOf用以判断在字符串中是否存在某子字符串,找不到返回"-1"。
参考技术A var patt = /[\u4e00-\u9fa5]+/;

以上是关于js如何判断字符是中文,英文,数字还是字符的主要内容,如果未能解决你的问题,请参考以下文章

js如何判断字符是中文,英文,数字还是字符

如何判断java中char是中文字符还是英文字符

js判断是不是有中文字符的方法大全

如何判断一个字符是数字还是字母

vue js判断字符是中文,英文,数字

vue js判断字符是中文,英文,数字