1 数据类型有哪些?
- 基本数据类型:undefined、null、boolean、number、string、symbol
- 引用数据类型:object、array、function
2 判断JavaScript数据类型的方法
2.1 typeof
- 该方法对string ,number ,symbol ,boolean ,undefine , function 会返回这些数据的是数据类型,但 null,array,Date ,RegExp 都只返回object,不能做到查出其数据类型。
2.2 instanceof
- instaceof只可以用来判断数组和对象的数据类型。
2.3 constructor
- 判断的结构:
判断的数据.constructor数据类型
例如:new Date().constructorDate;
2.4 toString
Object.prototype.toString.call('') ; // [object String]
Object.prototype.toString.call(1) ; // [object Number]
Object.prototype.toString.call(true) ; // [object Boolean]
Object.prototype.toString.call(Symbol()); //[object Symbol]
Object.prototype.toString.call(undefined) ; // [object Undefined]
Object.prototype.toString.call(null) ; // [object Null]
Object.prototype.toString.call(newFunction()) ; // [object Function]
Object.prototype.toString.call(newDate()) ; // [object Date]
Object.prototype.toString.call([]) ; // [object Array]
Object.prototype.toString.call(newRegExp()) ; // [object RegExp]
Object.prototype.toString.call(newError()) ; // [object Error]
Object.prototype.toString.call(document) ; // [object HTMLDocument]
Object.prototype.toString.call(window) ; //[object global] window 是全局对象 global 的引用