TL;DR
要检查一个 变量 是否为一个 数组,你可以使用 Array.isArray()
方法或 instanceof
运算符
let colors = ['red','green','blue'];
// #1: use Array.isArray
let isArray = Array.isArray(colors);
console.log(isArray); // true;
// #2: use instanceof operator
isArray = colors instanceof Array;
console.log(isArray); // true;
Code language: JavaScript (javascript)
1) 使用 Array.isArray(variableName) 方法检查变量是否为数组
如果 variableName
是一个数组,则 Array.isArray(variableName)
返回 true
。否则,它将返回 false
。
Array.isArray()
方法是检查变量是否为数组的推荐方法,因为它具有良好的浏览器支持。
以下是一些使用 Array.isArray()
方法的示例
const ratings = [1, 2, 3, 4, 5];
const vote = { user: 'John Doe', rating: 5 };
const str = "It isn't an array";
console.log(Array.isArray(ratings)); // true
console.log(Array.isArray(vote)); // false
console.log(Array.isArray(str)); // false
Code language: JavaScript (javascript)
2) 使用 instanceof 运算符检查变量是否为数组
由于所有数组都是 Array
类型的实例,因此可以使用 instanceof
来检查变量是否为数组,如下所示
variableName instanceof Array
Code language: JavaScript (javascript)
如果 variableName
是一个数组,则表达式将返回 true
。例如
const ratings = [1, 2, 3, 4, 5];
const vote = { user: 'John Doe', rating: 5 };
const str = "It isn't an array";
console.log(ratings instanceof Array); // true
console.log(vote instanceof Array); // false
console.log(str instanceof Array); // false
Code language: JavaScript (javascript)
总结
- 如果
variableName
是一个数组,则Array.isArray(variableName)
返回true
。 - 如果
variableName
是一个数组,则variableName instanceof Array
返回true
。
本教程对您有帮助吗?