JS对数据类的检测方式:
1. typeof(),只能检验基本数据类型 对引用数据类型不起作用
console.log(typeof(534));
console.log(typeof([]));
2. instanceof(),可以检验引用数据类型,无法检验基本数据类型
console.log(66 instanceof Number);
console.log([] instanceof Array);
3. constructor(),对基本数据类型和引用数据类型通用;如果声明了一个构造函数,并把原型指向了Array,那么此时无法进行判断
console.log(('abc').constructor == String);
console.log([].constructor == Array);
4.Object.prototype.toString.call(),完美的解决办法
console.log(Object.prototype.toString.call([]));
console.log(Object.prototype.toString.call(555));