JavaScript--判断某个变量是不是数组

当我们遇到判断一个变量是不是数组时,首先想到一般都会是typeof操作符,但是测试后发现

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

所以使用typeof来探测看来不行。下面介绍三种方法,可以帮助我们如何判断一个对象是不是数组。

方法一:使用instanceof方法。instanceof方法用于判断变量是否属于某一对象的实例,返回的是布尔值。

var method1=[] instanceof Array;
if (method1) {
    console.log(method1);
}else {
    console.log('false');
}

方法二:使用constructor属性。这个属性返回创建此对象的构造函数。

console.log([].constructor);//Function:Array
console.log([].constructor==Array);//true
console.log((123).constructor);//Function:Number
console.log("123".constructor);//Function:String
console.log(false.constructor);//Funciton:Boolean
console.log({}.constructor);//Function:Object

方法三:Array自带isArray()方法。推荐这个方法。

var method2=Array.isArray([]);
if (method2) {
    console.log(method2);
}else {
    console.log('false');
}

参考链接:https://www.cnblogs.com/lingdu87/p/9152806.html

猜你喜欢

转载自www.cnblogs.com/bigbosscyb/p/12168776.html