如何检查变量是否为JavaScript中的数组?

在javascript中,我们可以使用三种方法检查变量是否为数组。

1)isArray()方法

Array.isArray()方法检查是否传递的变量是数组或没有。如果变量是数组,则显示true,否则显示false。

语法

Array.isArray(variableName)

示例

<html>
<body>
<script type="text/javascript">
   arr = [1,2,3,4,5];
   str = "i love my india";
   document.write( Array.isArray(arr));
   document.write("</br>");
   document.write( Array.isArray(str));
</script>
</body>
</html>

输出结果

true
false


2)instanceof运算符

的instanceof 运算符用于测试一个构造的原型属性是否在对象的原型链的任何地方出现。在下面的示例中,instanceof 运算符检查是否存在数组原型。

语法

variable instanceof Array

示例

<html>
<body>
<script type="text/javascript">
   arr = [1,2,3,4,5];
   str = "i love my india";
   document.write(str instanceof Array);
   document.write("</br>");
   document.write(arr instanceof Array);
</script>
</body>
</html>

输出结果

false
true


3)检查变量的构造函数属性

当变量与我们指定的变量相同时,它将显示true。在这里,我们指定变量应为数组。因此,当变量为数组时,此方法显示true,否则显示false。

语法

variable.constructor === Array

示例

<html>
<body>
<script type="text/javascript">
   arr = [1,2,3,4,5];
   str = "i love my india";
   document.write(str.constructor === Array);
   document.write("</br>");
   document.write(arr.constructor === Array);
</script>
</body>
</html>

输出结果

false
true