📅  最后修改于: 2023-12-03 15:17:02.787000             🧑  作者: Mango
Javascript 中提供了多种方式来检查一个值是否为数组,包括:
Array.isArray() 方法可以检查一个值是否为数组,其语法如下:
Array.isArray(value)
其中,value 为待检查的值,如果 value 是数组,返回 true,否则返回 false。
示例代码:
const arr = [1, 2, 3];
console.log(Array.isArray(arr)); // true
const str = 'Hello';
console.log(Array.isArray(str)); // false
instanceof 操作符可以检查一个对象是否属于某个类或其子类,因为数组是 Object 的子类,所以可以通过 instanceof 操作符来检查一个值是否为数组,其语法如下:
value instanceof Array
其中,value 为待检查的值,如果 value 是数组,返回 true,否则返回 false。
示例代码:
const arr = [1, 2, 3];
console.log(arr instanceof Array); // true
const str = 'Hello';
console.log(str instanceof Array); // false
Object.prototype.toString.call() 方法可以返回一个值的类型信息,其语法如下:
Object.prototype.toString.call(value)
其中,value 为待检查的值,可以通过判断返回值来确定 value 是否为数组,如果返回值是 '[object Array]',则 value 是数组。
示例代码:
const arr = [1, 2, 3];
console.log(Object.prototype.toString.call(arr) === '[object Array]'); // true
const str = 'Hello';
console.log(Object.prototype.toString.call(str) === '[object Array]'); // false
以上就是检查数组的三种方式,开发者可以根据实际情况选择合适的方法来进行数组检查。