判断变量的类型
1、通过 typeof 来判断
写法:typeof 变量 或者 typeof(变量)
typeof 只能判断 number、string、boolean、function、undefined 五种值
// 举例
var a = 1;
var isF = true;
console.log(typeof a) // number
console.log(typeof isF) //boolean
2、通过 instanceof 来判断
用法:object instanceof constructor
判断 object 原型链上是否有 constructor.prototype
// 举例
var arr = [1,2,3];
console.log(arr instaceof Array); //true
3、通过 constructor 属性判断
在构造函数上都有一个 constructor 属性, 创立进去的实例会继承这个属性, 通过该属性能够失去变量类型。留神:null 和 undefined 没有这个属性
// 举例
var str = 'abc';
console.log(str.constructor) //[Function String]
4、通过借用 Object 的 toString 办法
通过 Object.prototype.toString.call(obj), 失去的是一个字符串, 字符串是一个数组, 数组第一项是 object, 第二项是变量类型。
// 举例
var arr = [1,2,3];
console.log(Object.prototype.toString.call(arr))
// [object Array]