// 判断数据类型
var arr = [];
var obj = {};
var fn = new Function();
// 1 toString
console.log(Object.prototype.toString.call(arr)); // [object Array]
console.log(Object.prototype.toString.call(obj)); // [object Object]
console.log(Object.prototype.toString.call(arr) === '[object Array]'); // true
console.log(Object.prototype.toString.call(obj) === '[object Array]'); // false
// 判断构造函数
console.log(arr.constructor === Array);//true
console.log(obj.constructor === Array);//false
// 判断是否是数组的实例
console.log(fn instanceof Function);//true
console.log(arr instanceof Array); // true
console.log(arr instanceof Array); // true
console.log(arr instanceof Object); // true
console.log(obj instanceof Object); // true
// instanceof 右侧只能是对象 不能是 null
// console.log(obj instanceof null); // 报错
// es5 拓展了 isArray 判断数据类型
console.log(Array.isArray(arr)); // true
console.log(Array.isArray(obj)); // false
console.log(arr.constructor instanceof Object); // true
console.log(obj.constructor instanceof Object); // true
console.log(obj.constructor instanceof Function);//true
js 判断数据类型的方法
最新推荐文章于 2022-09-27 22:14:13 发布