在JS中,检查一个变量是否为数组的方法有几种。接下来就一并介绍。
Array.isArray()
方法用于判断一个变量是否为数组,返回布尔值。例如:
let arr = [1, 2, 3];
console.log(Array.isArray(arr)); // 输出 true
instanceof
运算符可以通过ProtoType链判断是否为数组,例如:
let arr = [1, 2, 3];
console.log(arr instanceof Array); // 输出 true
console.log(arr instanceof Object); // 输出 true
常用于其他DOM类型或自定义类的对象类型检测,但同样适用于数组类型的检测,例如:
let arr = [1, 2, 3];
console.log(Object.prototype.toString.call(arr) == '[object Array]'); // 输出 true
function checkArray(arr) {
if (Array.isArray(arr)) {
console.log("It's an array.");
} else {
console.log("It's not an array.");
}
}
checkArray([1, 2, 3]); // 输出 It's an array.
checkArray({name: 'john'}); // 输出 It's not an array.
function checkArray2(arr) {
if (arr instanceof Array) {
console.log("It's an array.");
} else {
console.log("It's not an array.");
}
}
checkArray2([1, 2, 3]); // 输出 It's an array.
checkArray2({name: 'john'}); // 输出 It's not an array.
function checkArray3(arr) {
if (Object.prototype.toString.call(arr) == '[object Array]') {
console.log("It's an array.");
} else {
console.log("It's not an array.");
}
}
checkArray3([1, 2, 3]); // 输出 It's an array.
checkArray3({name: 'john'}); // 输出 It's not an array.
以上就是JS array数组检测方式的详细攻略。
本文链接:http://task.lmcjl.com/news/10183.html