Cómo comprobar si una matriz de JavaScript está vacía o no con .length

Cuando esté programando en JavaScript, es posible que necesite saber cómo verificar si una matriz está vacía o no.

Para verificar si una matriz está vacía o no, puede usar la propiedad .length.

La propiedad length establece o devuelve el número de elementos de una matriz. Al conocer el número de elementos de la matriz, puede saber si está vacía o no. Una matriz vacía tendrá 0elementos dentro de ella.

Repasemos algunos ejemplos.

Sintaxis de ejemplo de .length

Const myArray = [‘Horses’, ‘Dogs’, ‘Cats’];

Aquí creamos una variable que apunta hacia una matriz vacía.

Usando la propiedad length, podemos verificar la longitud de la matriz:

myArray.length

Esto devolverá 3, porque hay 3 elementos en la matriz.

Para comprobar si la matriz está vacía o no con .length, podemos hacerlo de tres formas.

.length ejemplo uno

Primero, creemos una nueva matriz sin elementos.

const arr = []

Ahora podemos verificar si la matriz está vacía usando .length.

arr.length

Esto devolverá 0, ya que hay 0 elementos en la matriz.

.longitud ejemplo dos

También podemos comprobar explícitamente si la matriz está vacía o no.

if (arr.length === 0) { console.log("Array is empty!") }

Si nuestra matriz está vacía, se registrará el mensaje anterior. Si la matriz tiene elementos, el código dentro del ifbloque no se ejecutará.

Esta es la tercera forma de verificar si una matriz está vacía usando .length.

.length ejemplo tres

Combinando el uso de la propiedad length y el operador lógico "no" en JavaScript, el "!" símbolo, podemos comprobar si una matriz está vacía o no.

El !operador niega una expresión. Es decir, podemos usarlo para devolver truesi una matriz está vacía.

Para este ejemplo, abramos nuestra consola JavaScript. Para abrir su consola en Chrome, puede hacer clic en Inpsect -> Consola.

Primero, cree una matriz sin elementos.

A continuación, usemos el operador lógico "no", junto con nuestra propiedad .length, para probar si la matriz está vacía o no.

Si no hubiéramos utilizado el operador "no", arr.lengthhabríamos regresado 0. Con el operador agregado, regresará truesi su operando es false. Debido a que arr.length es 0, o falso, devuelve true.

Usemos esto con una ifdeclaración e imprimamos un mensaje si nuestra matriz está vacía.

Al verificar si una matriz está vacía o no, a menudo es mejor verificar también si la matriz es realmente una matriz.

¿Por qué?  

Porque podría darse el caso en el que esperaba verificar la longitud de una matriz, pero en su lugar se le proporciona un tipo de datos diferente, por ejemplo, una cadena:

Debido a que length propertyse puede usar en otros tipos de datos, es bueno verificar también que su matriz sea de hecho una matriz como esperaba.

Le sugiero que también use el Array.isArray()método para confirmar que su matriz es una matriz. Este método determina si lo que se pasó es una matriz o no. Si lo que se pasó fue una matriz, este método volverá true.

Agreguemos este método a nuestro ejemplo.

Cómo utilizar el método Array.isArray ()

Terminando

En este artículo, aprendimos que puede usar la lengthpropiedad en JavaScript de varias maneras para verificar si una matriz está vacía o no. La lengthpropiedad devuelve el número de elementos de una matriz.

También aprendimos que es mejor usar también el Array.isArraymétodo cuando se usa la .lengthpropiedad, para verificar si el valor pasado es una matriz como esperabas.