js判断是不是数组有几种方法
时间: 2023-07-07 21:27:59 浏览: 108
除了使用 `Array.isArray()` 方法来判断一个变量是否为数组,还有其他几种方法可以实现。
1. 使用 instanceof 运算符
可以使用 instanceof 运算符来判断对象是否属于某个类,因为数组是 Object 类的子类,因此可以通过判断变量是否为 Array 类型来判断它是否为数组。示例代码如下:
```
let arr = [1, 2, 3];
if (arr instanceof Array) {
console.log("arr 是一个数组");
} else {
console.log("arr 不是一个数组");
}
```
2. 使用 Object.prototype.toString 方法
可以使用 Object.prototype.toString 方法来获取变量的类型,进而判断它是否为数组。因为对于数组来说,它的类型字符串是 "[object Array]",因此可以通过判断变量类型字符串是否为这个值来判断它是否为数组。示例代码如下:
```
let arr = [1, 2, 3];
if (Object.prototype.toString.call(arr) === '[object Array]') {
console.log("arr 是一个数组");
} else {
console.log("arr 不是一个数组");
}
```
需要注意的是,如果使用这种方式判断一个类数组对象(比如 arguments 对象)是否为数组时,会返回 false,因为它们的类型字符串是 "[object Object]"。
综上所述,以上三种方法都可以用来判断一个变量是否为数组,其中使用 Array.isArray() 方法是最简单、最直观的方式。
阅读全文