javascript变量的类型检查

来源:互联网 发布:烟袋斜街10号网络剧 编辑:程序博客网 时间:2024/05/22 05:16

 从函数(function)的参数说起

         函数的变量参数arguments可以判断传入的参数数量,虽然函数的变量参数是值传递但是参数的类型判断还是有必要的。

         说到变量的类型判断就要说下typeof,instranceof,constructor构造函数判断类型,但是用这几个方法判断是有区别的。

变量typeofinstanceofconstructor55numberNumber(false)Number(true)"str"stringStirng(false)Stirng(true)TRUEbooleanBoolean(false)Boolean(true)function(){}functionFunction(true)Function(true){name:"zhangsan"}objectObject(true)Object(true)new Number(55)objectNumber(true)Number(true)new String("str")objectStirng(true)Stirng(true)new Boolean(true)objectBoolean(true)Boolean(true)

以上是用不同的方法检查的类型

例如:

var n=55;

alert(typeof n);//number

alert(n instanceof Number);//false

alert(n.constructor Number);//true

总结:typeof检查原始类型和function是可以的但是对象就不能详细确定;所以用构造函数检查对象和用instanceof检查对象都是好的。但是用于对象的检查instanceof,constructor具体用那个Jquery的作者给出了自己的答案constructor

原创粉丝点击