js中判断数据类型的几种方法

1.typeof

typeof data  返回data的类型字符串形式。如 typeof 'a'  //string 

typeof返回的值:(1)undefined--如果这个值未定义;(2)boolean--如果这个值是布尔值;(3)string--如果这个值是字符串;(4)number--如果这个值是数字;(5)function--如果这个值是函数;(6)object--如果这个值是对象或者null

2.instanceof判断一个实例是否属于某种类型,原理是通过判断做操作数的对象的原型链上是否具有右操作数的构造函数的prototype属性

a instanceof Array //true or false

[] instanceof Array //true

[] instanceof Object //true

3.根据对象的constructor判断:constractor属性返回对创建此对象的函数的引用

该方法在类继承时会出错。

4.prototype

Object.prototype.toString.call(a) //字符串:'[object String]';数字:'[object Array]';日期:'[object Date]';函数:'[obejct Function]'

注意:

constructor和instanceof在判断引用类型时,被判断的引用类型必须在当前页面声明,否则会出错。

posted @ 2018-01-25 17:48  helloMySir  阅读(171)  评论(0编辑  收藏  举报