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

Posted bigbosscyb

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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

以上是关于JavaScript--判断某个变量是不是数组的主要内容,如果未能解决你的问题,请参考以下文章

请问js怎么判断一个变量是对象还是数组呢?

如何判断javascript中的变量是不是为数组?

js怎么判断某个数组里面是不是包含这个元素

jquery怎么判断是不是有某个元素

Javascript中判断变量是数组还是对象(array还是object)

php 中 判断数组中是不是有值