1、判断数据类型的几种方法
1、typeof、2、instanceof、3、constructor、4、Object.prototype.toString.call()、5、jquery.type()
1、typeof
使用typeof可以判断基本数据类型,在使用typeof判断引用数据类型时除了判断function时返回function类型,其他引用类型返回的都是object。并且返回的数据类型是字符串形式的小写
使用方法:typeof a
返回格式为:string
2、instanceof
使用instanceof可以判断已知的引用数据类型、不能判断基本数据类型。instanceof可以判断一个值是否属于某种类型、instanceof也可以判断在继承时一个实例是否属于它的父类型。可以通过构造函数的方式进行判断基本数据类型。
使用方法:[1,2,3,4] instanceof Array;
3、constructor
constructor是prototype对象上的属性,指向构造函数。constructor除了null和undefined无法判断,其他的数据类型都可以判断,但是对于继承类型的数据有可能会出错、因为Object被覆盖掉了,检测结果就不对了
使用方法:([1,2,3,4]).constructor
返回格式为:ƒ Array() { [native code] }
4.Object.prototype.toString.call()
Object.prototype.toString.call()是通用于所有的数据类型,返回的是构造函数的类型,
使用方法:Object.prototype.toString.call([1,2,3,4])
返回格式为:[object Array]