var arr = [2, 3, 4, 6];
var temp;
// 第一种方法,使用Array的原型跟arr的原型比较,是否一样
temp = Array.prototype.isPrototypeOf(arr);
temp == true ? console.log("这是一个数组") : console.log("这不是一个数组");
//第二种方法,使用instanceof()函数判断
temp = arr instanceof Array;
temp == true ? console.log("这是一个数组") : console.log("这不是一个数组");
// 第三种方法,借用Object的String()方法给string类型,然后判断结果
temp = Object.prototype.toString.apply(arr);
temp == "[object Array]" ? console.log("这是一个数组") : console.log("这不是一个数组");
//第四种方法,直接使用isArray()直接判断是不是一个数组
temp = Array.isArray(arr);
temp == true ? console.log("这是一个数组") : console.log("这不是一个数组");
//构造一个isArray()兼容ie
if (Array.isArray === undefined) {
Array.isArray = function(value) {
var bool = Array.prototype.isPrototypeOf(value);
return bool;
}
}
判断当前对象是不是数组的4种方式
最新推荐文章于 2023-06-27 00:21:46 发布