JavaScript 如何检查一个变量是否为数组

JavaScript 如何检查一个变量是否为数组

本文将展示如何检查给定变量的值是否为数组。

在JavaScript中,我们可以使用3种方法来检查一个变量是否为数组,这些方法包括:

  • 使用isArray()方法:
  • 使用instanceof运算符:
  • 检查构造函数类型:

方法1:使用JavaScript的isArray()方法

这个方法检查传入的变量是否为数组对象。

语法:

Array.isArray(variableName)  

如果变量是一个数组,它将返回一个true布尔值,如果不是则返回false。这在下面的示例中展示出来。

示例1: 在这个示例中,我们将使用JavaScript中的isArray()方法来检查给定的变量是否是一个数组。

function checkArray() {
    let str = 'This is a string';
    let num = 25;
    let arr = [10, 20, 30, 40];
 
    let ans = Array.isArray(str);
    console.log("Output for String: " + ans);
 
    ans = Array.isArray(num);
    console.log("Output for Number: " + ans);
 
    ans = Array.isArray(arr);
    console.log("Output for Array: " + ans);
}
 
checkArray();

输出

Output for String: false
Output for Number: false
Output for Array: true

方法2:使用JavaScript instanceof操作符

它用于测试构造函数的prototype属性是否出现在对象的原型链中的任何位置。这可以用于判断给定的变量是否具有’Array’的原型。

语法:

variable instanceof Array  

返回值: 如果变量与指定的类型(这里是数组)相同,则运算符返回 true 布尔值;否则返回 false。下面的示例中展示了这个过程。

示例: 在这个示例中,我们将使用 instanceof 运算符在 JavaScript 中检查一个给定的变量是否是数组。

function checkArray() {
    let str = 'This is a string';
    let num = 25;
    let arr = [10, 20, 30, 40];
 
    let ans = str instanceof Array;
    console.log("Output for String:" + ans);
 
    ans = num instanceof Array;
    console.log("Output for Number:" + ans);
 
    ans = arr instanceof Array;
    console.log("Output for Array:" + ans);
}
 
checkArray();

输出

Output for String:false
Output for Number:false
Output for Array:true

方法3:检查变量的构造函数属性

另一种检查变量是否为数组的方法是通过检查其构造函数是否为Array。

语法:

variable.constructor === Array  

如果变量与指定的变量相同(例如一个数组),则条件为真,否则为假。下面的示例展示了这一点。

示例: 在这个示例中,我们将通过检查变量的构造函数属性来判断给定的变量是否为数组。

function checkArray() {
    let str = 'This is a string';
    let num = 25;
    let arr = [10, 20, 30, 40];
 
    let ans = str.constructor === Array;
    console.log("Output for String:" + ans);
 
    ans = num.constructor === Array;
    console.log("Output for Number:" + ans);
 
    ans = arr.constructor === Array;
    console.log("Output for Array:" + ans);
}
 
checkArray();

输出

Output for String:false
Output for Number:false
Output for Array:true

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程