js判断数据类型

1.typeof

检测基本数据类型

console.log(typeof 1);  //number

console.log(typeof 'ss');  //string

console.log(typeof true);  //boolean

console.log(typeof undefined);  //undefined

console.log(typeof null);  //object

console.log(typeof []);  //object

2.instanceof

检测实例对象

console.log([] instanceof Array);  //true

console.log(/^q/ instanceof RegExp);  //true

console.log([] instanceof Array);  //true

console.log(1 instanceof Number);  //false

3.constructor

全部数据类型都可以检测,但如果将某个构造函数的原型改掉,会出现错误。

console.log(("1").constructor === String);//true

4.Object.prototype.toString.call()

最安全的

var a = Object.prototype.toString; 

console.log(a.call("aaa"));   //[object String]

你可能感兴趣的:(js判断数据类型)