宝哥软件园

JavaScript知识总结中的JavaScript判断变量数据类型(6)

编辑:宝哥软件园 来源:互联网 时间:2021-10-28

最近做了一个项目,处理js对数据类型的判断,在网上搜索相关信息,亲自测试各种数据类型的判断,绝对安全。下面小编总结分享具体内容,供大家参考!

1.JS中的数据类型。

1.数字:包括整数和浮点数。

2.布尔(布尔)

3.字符串类型(字符串)

4.对象(对象)。

5.数组(数组)。

6.空值(空)

7.未定义(未定义)。

其次,判断一个变量的数据类型。

1.数字类型(数字)

常用的判断方法有:

函数is number(val){ val的返回类型===' number}但是有些情况是行不通的,比如:

风险值a;alert(is number(parsent(a)));这里弹出True,如下图所示:

但实际上,变量a是NaN,不能用于数值运算。

因此上述功能可以修改为:

函数is number(val){ val的返回类型==' number ' is inite(val);}修改后,弹出false,如下图所示:

顺便介绍一下JavaScript的isFinite()函数,用来检查它的参数是否为无穷大,如果数字为有限(或者可以转换为有限)则返回true。否则,如果number是NaN(不是数字),或者是一个具有无限正或负的数字,则返回false。

2.布尔(布尔)

布尔类型的判断相对简单,可以通过以下方式进行判断:

/*判断变量val是否为布尔类型*/function is boolean type(val){ val的返回类型==' boolean}测试代码:

脚本类型='text/javascript'/*判断变量val是否为boolean */function is boolean type(val){ val的返回类型==' boolean} var a;var b=假;Alert('变量A为布尔类型的判断结果为:' is booleantype(A));Alert('变量b为布尔类型的判断结果为:' is BooleanType(b));/脚本运行结果:

3.字符串(字符串)。

字符串类型的判断比较简单,可以通过以下方法判断:

/*判断变量是否为字符串类型*/函数是否为字符串类型(val){ val的返回类型==' string}测试代码:

脚本类型='text/javascript'/*判断变量是否为字符串类型*/函数是否为字符串类型(val){ val的返回类型==' string} var a;var s=' strTypeAlert('变量A为字符串类型的判断结果为:' isStringType(A));Alert('变量s为字符串类型的判断结果为:' isStringType(s));/脚本运行结果:

4.未定义(未定义)。

未定义判断比较简单,可以通过以下方法判断:

/*判断变量是否未定义*/函数是否未定义(val){ val的返回类型==' undefined}测试代码:

脚本类型=' text/JavaScript ' var a;//a是undefinedvar s=' strType/*判断变量是否未定义*/函数是否未定义(val){ val的返回类型==' undefined}alert('变量a的判断结果为Undefined:' isUndefined(a));Alert('变量s的判断结果为Undefined:' is Undefined(s));/脚本运行结果:

5.对象(对象)。

当变量为空时,Typeof也返回Object,所以不能直接用typeof来判断对象。

应该是这样的:

函数isObj(str){ if(str===null | | str的类型===' undefined '){ return false;}返回str==='object '的类型;}测试代码:

脚本类型='text/javascript'/*判断变量是不是目标类型*/function isObj(str){ if(str===null | | str的类型===' undefined '){ return false;}返回str==='对象'的类型;} var a;var b=nullvar c=' strvar d={ };var e=新对象();警报(' b的值是null,类型为==='对象'的判断结果是:'(类型为b==' object ');警报('变量a是目标类型的判断结果是:' IseBj(a));//falsealert('变量b是目标类型的判断结果是:' IseBj(b));//falsealert('变量c是目标类型的判断结果是:' IseBj(c));//falsealert('变量d是目标类型的判断结果是:' IseBj(d));//truealert('变量e是目标类型的判断结果是:' IseBj(e));//true/script运行结果:

6.空值(空)

判断空值用val===null即可

函数为Null(val){ return val===Null;}测试代码:

/*判断变量是不是null */函数为Null(val){ return val===Null;}/*测试变量*/var a;var b=nullvar c=' str//弹出运行结果警报('变量a是空的判断结果是:' '是Null(a));//falsealert('变量b是空类型的判断结果是:' '是Null(b));//truealert('变量c是空类型的判断结果是:' '为Null(c));//false运行结果:

7.数组(数组)

数组类型不可用类型来判断。因为当变量是数组类型是,类型会返回对象。

这里有两种方法判断数组类型:

/*判断变量到达)是不是数组方法一*/函数isArray(arr){返回对象。原型。tostring。apply(arr)='[对象数组]';}/*判断变量到达)是不是数组方法二*/函数isArray(arr){ if(arr===null | | arr的类型===' undefined '){ return false;}返回arr.constructor===Array}测试代码:

脚本类型='text/javascript'/*判断变量到达)是不是数组方法一*/函数isArray(arr){返回对象。原型。tostring。apply(arr)='[对象数组]';}/*判断变量到达)是不是数组方法二*/函数isArray(arr){ if(arr===null | | arr的类型===' undefined '){ return false;}返回arr.constructor===Array}//测试变量var a=nullvar b=风险值c .var arr=[,];var arr=新数组();//打印测试结果document.write('arr变量是数组类型,arr==='对象'的类型的结果是:'(arr===' object ')的类型;文件。write('(br/');文件。写('-');文件。write('(br/');document.write('使用isArray方法判断结果如下:');文件。write('(br/');文件。写('-');文件。write('(br/');document.write('变量a是数组类型的判断结果是:' isArray(a));文件。write('(br/');document.write('变量b是数组类型的判断结果是:' isArray(b));文件。write('(br/');document.write('变量c是数组类型的判断结果是:' isArray(c));文件。write('(br/');document.write('变量到达)是数组类型的判断结果是:' isArray(arr));文件。write('(br/');document.write('变量到达)是数组类型的判断结果是:' isArray(arr));文件。write('(br/');文件。写('-');文件。write('(br/');document.write('使用isArray方法判断结果如下:');文件。write('(br/');文件。写('-');文件。write('(br/');document.write('变量a是数组类型的判断结果是:' isArray(a));文件。write('(br/');document.write('变量b是数组类型的判断结果是:' isArray(b));文件。write('(br/');document.write('变量c是数组类型的判断结果是:' isArray(c));文件。write('(br/');document.write('变量到达)是数组类型的判断结果是:' isArray(arr));文件。write('(br/');document.write('变量到达)是数组类型的判断结果是:' isArray(arr));文件。write('(br/');/script运行结果:

以上内容是边肖介绍的JavaScript知识点总结(六)中关于JavaScript判断变量数据类型的相关知识,希望对大家有所帮助。如果你想了解更多,请关注我们的网站!

更多资讯
游戏推荐
更多+