JavaScript fornece funções integradas para verificar se o array está vazio ou não. A seguir estão os métodos oferecidos pela programação JavaScript para verificar um array vazio:
- comprimento
- isArray(matriz)
A função Array.isArray() verifica o tipo de array (o parâmetro passado é um array ou não) e array.length encontra o comprimento do array. Assim, podemos identificar facilmente o array vazio. Você também pode usá-los individualmente e separadamente.
Agora, aprenderemos esses métodos detalhadamente com exemplos:
Propriedade .length
A propriedade length retorna o comprimento do array pelo qual você pode determinar se o array está vazio ou não. Esta propriedade é usada diretamente com o nome do array concatenado pelo operador ponto (.), por exemplo, arr1.length .
Sintaxe
array.length
Se o comprimento retornado por esta propriedade for 0, refere-se a true significa que o array está vazio. Caso contrário, a matriz não estará vazia se retornar um valor diferente de zero.
Como usar?
Ele é usado diretamente com uma matriz definida pelo usuário concatenada pelo operador ponto (.). Veja o exemplo abaixo desta propriedade para entendê-la melhor.
Copiar código
var arr1 = [15, 78, 24, 89, 23]; var arr2 = []; //check second array (arr2) length if(arr1.length == 0) document.write('arr1 is empty <br>'); else document.write('arr1 is not empty <br>'); //check second array (arr2) length if(arr2.length == 0) document.write('arr2 is empty <br>'); else document.write('arr2 is not empty <br>');Teste agora
Saída
Na saída abaixo, você pode ver que o primeiro array chamado arr1 não está vazio já que possui cinco elementos, enquanto o segundo array denominado arr2 está vazio .
arr1 is not empty arr2 is empty
Array.isArray()
Em JavaScript , matrizes não são realmente matrizes; eles são objetos. Então, se você verificar o tipo de array usando a propriedade typeof, ele retornará o valor como um objeto . Mas agora temos Arrau.isArray() função para verificar o tipo de array, que pode ser usada com a propriedade .length para verificar o array vazio.
Este método ajuda a determinar se o valor que você passou nesta função é array ou não. Podemos dizer que identifica o tipo de array ou variável de tipo de dados normal. Também pode determinar a matriz indefinida ou nula.
chave exclusiva do mysql
Sintaxe
Array.isArray(arr1)
Ele retorna um valor booleano, também verdadeiro ou falso.
Valores de retorno
Verdadeiro - Se retornar verdadeiro, o valor passado é uma matriz.
Falso - Se retornar falso, o valor passado nesta função não é um tipo de array.
Como usar?
Esta função é usada com o nome do array, por exemplo, Matriz.éArray(arr1) . Aqui, usaremos esta função com propriedade .length para verificar o array vazio. Veja a implementação desta função em um exemplo de JavaScript para entendê-la melhor.
Exemplo
Copiar código
var arr1 = new Array('Happy', 'New', 'Year'); //check the first variable (arr1) type and empty if(Array.isArray(arr1)) { document.write('arr1 is an array'); if (arr1.length == 0) document.write(' and it is empty <br>'); else document.write(' but it is not empty. <br>'); } else document.write('arr1 is not an array. <br>');Teste agora
Saída
Na saída abaixo, você pode ver que o valor que verificamos usando a função Array.isArray() é um array, mas o array não está vazio.
arr1 is an array but it is not empty.
Exemplo 2
Neste exemplo, verificaremos se há valor vazio em um array e se há valor não-array em outra variável. Veja o código abaixo:
var arr1 = []; var arr2 = 'notAnArray'; //check the first variable (arr1) type and empty if(Array.isArray(arr1) == true){ document.write('arr1 is an array'); if (arr1.length <= 0) document.write(' and it is empty <br>'); else document.write(' and it is not empty. <br>'); } else document.write('arr1 is not an array. <br>'); //check the second variable (arr2) type and empty if(Array.isArray(arr2) == true){ document.write('arr2 is an array'); if (arr2.length <= 0) document.write(' and it is empty as well. <br>'); else document.write(' and it is not empty. <br>'); } else document.write('arr2 is not an array. <br>'); </=></=>Teste agora
Saída
Na saída abaixo, você pode ver que o primeiro array chamado arr1 um array e está vazio também porque não contém elementos, enquanto a segunda variável chamada arr2 não é uma matriz .
arr1 is an array and it is empty as well. arr2 is not an array.
propriedade isArray() e .length juntas
Tanto a propriedade length quanto a função Array.isArray() podem ser usadas juntas dentro da condição if conectada pelo operador AND(&&).
Sintaxe
A seguir está a sintaxe para isArray() e propriedade length como eles são usados juntos:
Array.isArray(arr1) && arr1.length
Use a sintaxe acima com a condição if-else para verificar o tipo de array e o array vazio.
Como usá-lo?
Veja o exemplo abaixo para entender como ambas as funções funcionam juntas para verificar um array vazio em JavaScript.
Verifique se o array está vazio
Você pode usar o operador OR (||) entre ambas as condições para verificar se a matriz está vazia.
if(Array.isArray(arr1) || arr1.length) { // }
Verifique se o array não está vazio
Você pode usar o método inverso para verificar se o array não está vazio. Para isso, use o operador AND (&&) para colocar as condições para verificar se o array não está vazio.
if(Array.isArray(arr1) && arr1.length) { // }
Exemplo 1
Agora, usaremos esta função em um exemplo para entendê-la melhor. Neste exemplo, verificamos duas variáveis, sejam do tipo array ou não.
Copiar código
var arr1 = []; var arr2 = [15, 78, 24, 89, 23]; //check the first variable (arr1) type and empty if(Array.isArray(arr1) == true && arr1.length <= 0) document.write('arr1 is an array and it empty <br> <br>'); else document.write('Either arr1 is not an array or it is not empty <br> <br>'); //check the second variable (arr2) type and empty if(Array.isArray(arr2) == true && arr2.length <= 0) document.write('arr2 is an array and it empty <br>'); else document.write('Either arr2 is not an array or it is not empty <br>'); </=></=>Teste agora
Saída
Você pode ver que arr1 é um array vazio e err2 não é um array ou não está vazio na saída abaixo.
arr1 is an array and it is empty. Either arr2 is not an array or it is not empty.
Nota: É uma forma complexa e menos clara de obter o resultado exato.
Array.isArray() vs.comprimento
A propriedade .length pode ser usada com outros tipos de dados, como string, para encontrar o comprimento. Já o método Array.isArray() é usado apenas com dados de array, o que também ajuda a identificar que seu array é um array.
O método Array.isArray() é um pouco demorado porque aqui primeiro determinamos se a variável é do tipo array ou não e então temos que usar a propriedade .length para verificar o array vazio.
Portanto, sugerimos que você use a propriedade .length para verificar diretamente o comprimento da variável do array para cálculos pequenos e determinar se ela está vazia ou não.