JavaScript 函数用于检查数组是否为空

17 Mar 2025 | 5 分钟阅读

JavaScript 提供了内置函数来检查数组是否为空。以下是 JavaScript 编程提供的检查空数组的方法:

  1. length
  2. isArray(array)

Array.isArray() 函数检查数组类型(传入的参数是否为数组)以及 array.length 来获取数组的长度。因此,我们可以轻松地识别空数组。您也可以单独和分开使用它们。

现在,我们将通过示例详细学习这些方法

.length 属性

length 属性返回数组的长度,通过该长度您可以确定数组是否为空。此属性直接与数组名称通过点 (.) 运算符连接使用,**例如:arr1.length**。

语法

如果此属性返回的长度为 0,则表示数组为空。否则,如果它返回非零值,则数组不为空。

如何使用?

它直接与用户定义的数组通过点 (.) 运算符连接使用。请参阅下面的此属性的示例以更好地理解。

复制代码

输出

在下面的输出中,您可以看到第一个名为 arr1 的数组不为空,因为它有五个元素,而第二个名为 arr2 的数组是空的

arr1 is not empty
arr2 is empty

Array.isArray()

JavaScript 中,数组实际上不是数组;它们是对象。因此,如果使用 typeof 属性检查数组的类型,它将返回 object 值。但现在我们有了 Array.isArray() 函数来检查数组的类型,可以与 .length 属性结合使用来检查空数组。

此方法有助于确定您在此函数中传入的值是否为数组。我们可以说它识别数组类型或普通数据类型变量。它还可以确定未定义或 null 数组。

语法

它返回一个布尔值,true 或 false。

返回值

true - 如果返回 true,则传入的值是一个数组。

false - 如果返回 false,则传入此函数的值不是数组类型。

如何使用?

此函数与数组名称一起使用,例如 Array.isArray(arr1)。在这里,我们将此函数与 .length 属性一起使用来检查空数组。请参阅 JavaScript 示例中此函数的实现以更好地理解。

示例

复制代码

输出

在下面的输出中,您可以看到我们使用 Array.isArray() 函数检查的值是一个数组,但该数组不为空。

arr1 is an array but it is not empty.

示例 2

在此示例中,我们将检查一个数组是否为空,以及另一个变量是否为非数组值。请参阅下面的代码

输出

在下面的输出中,您可以看到第一个名为 arr1 的数组是空的,因为它没有任何元素,而第二个名为 arr2 的变量不是数组

arr1 is an array and it is empty as well.
arr2 is not an array.

isArray() 和 .length 属性一起使用

length 属性和 Array.isArray() 函数都可以一起在 if 条件中使用,并由 AND (&&) 运算符连接。

语法

以下是 isArray() 和 length 属性如何一起使用的语法

将上述语法与 if-else 条件一起使用,以检查数组类型和空数组。

如何使用它?

请参阅下面的示例,以了解这两个函数如何协同工作来检查 JavaScript 中的空数组。

检查数组是否为空

您可以使用 OR (||) 运算符将这两个条件连接起来,以检查数组是否为空。

检查数组是否不为空

您可以反向使用此方法来检查数组是否不为空。为此,请使用 AND (&&) 运算符将条件放在一起,以检查数组是否不为空。

示例 1

现在,我们将在一个示例中使用此函数来更好地理解它。在此示例中,我们检查了两个变量,它们是否是数组类型。

复制代码

输出

您可以在下面的输出中看到 arr1 是一个空数组,而 err2 是非数组或非空数组。

arr1 is an array and it is empty.
Either arr2 is not an array or it is not empty.

注意:这是获取确切结果的一种复杂且不太清晰的方式。

Array.isArray() 与 .length 对比

.length 属性可用于查找字符串等其他数据类型的长度。而 Array.isArray() 方法仅用于数组数据,这也有助于确定您的数组是否为数组。

Array.isArray() 方法有点冗长,因为我们首先需要确定变量是数组类型还是其他类型,然后我们必须使用 .length 属性来检查空数组。

因此,我们建议您使用 .length 属性直接检查数组变量的长度,以进行小型计算并确定其是否为空。