Como verificar se array está vazio ou existe em JavaScript

Neste artigo você vai aprender a como verificar se array está vazio ou existe em JavaScript, com apenas uma linha de código!

verificar se array está vazio ou existe capa

Fala programador(a), beleza? Bora aprender mais sobre arrays e JavaScript!

Estamos aqui buscando duas verificações, que podem ser utilizadas separadas também

A primeira é de verificar a variável ou valor é um array ou não, isso pode ser feito com a função isArray de Array

E para validar se o array está vazio é fácil, basta checar a propriedade length

Que se estiver zerada indica que a lista está vazia

O código final para as duas validações é este:

const a = [1, 2, 3]
const b = "test"

function checkIfIsArrayAndIsEmpty(arr) {
	return Array.isArray(arr) && arr.length ? false : true
}

console.log(checkIfIsArrayAndIsEmpty(a)) // false 
console.log(checkIfIsArrayAndIsEmpty(b)) /// true

Aqui criamos uma função que faz as duas validações solitadas

Se temos um array com elementos recebemos false

Agora se o item não é um array ou está vazio, recebemos true

O resultado é true pois é o que estamos buscando: um dado que não é um array ou um array vazio

Conclusão

Neste artigo você aprendeu a como verificar se array está vazio ou existe em JavaScript

A validação do dado ser um array pode ser feita com isArray, já a checagem de array vazio é feita com a propriedade length

Confira nossos cursos gratuitos no Youtube, com vídeos todos os dias!Se inscreva e ative o sininho para receber as notificações e aprender mais ainda sobre desenvolvimento web!

Veja também nosso catálogo de cursos na Udemy, todos com exercícios e projetos práticos, nas mais diversas tecnologias. O link acima contém um cupom de desconto para os cursos!

Se você só quer saber se a lista está vazia e já tem certeza que é um array, não precisa da função inteira

Basta olhar a propriedade length

Se conhece a ideia de contar itens, ela é bem isso: length devolve quantos elementos tem dentro

Quando dá zero, o array está vazio

console.log(vazio.length === 0) // true console.log(cheio.length === 0) // false

length igual a zero é o jeito mais direto de checar array vazio em JavaScript, sem precisar de biblioteca nenhuma

E se a dúvida for só se o valor é mesmo um array? Aí entra o Array.isArray

Cuidado com um detalhe que já ferra muita gente: usar typeof num array devolve ‘object’, então typeof não serve pra isso

const texto = ‘test’ const objeto = { a: 1 }

console.log(Array.isArray(lista)) // true console.log(Array.isArray(texto)) // false console.log(Array.isArray(objeto)) // false

Array.isArray é built-in, roda em qualquer navegador moderno e no Node, e devolve true só quando o valor é de fato um array

Aqui tem uma pegadinha real

Se você chamar .length direto num valor que pode ser null ou undefined, o código quebra com erro

Pra se proteger disso, dá pra usar o optional chaining, o famoso ?.

const nada = null

console.log(nada?.length) // undefined, e não quebra

assim, se o valor não existir, você recebe undefined em vez de um erro travando tudo

é por isso que a função lá de cima começa checando Array.isArray primeiro: se não for array, nem chega a mexer no length

Qual a diferença entre array não existir e array vazio?

Não existir é quando a variável é null ou undefined, ou seja, não tem array nenhum ali

São coisas diferentes e por isso a validação completa checa as duas

Dá pra usar array.length sem o if?

Dá, porque em JavaScript o zero é falsy

Então if (arr.length) já entra como false quando o array está vazio, sem precisar escrever === 0

É o truque que a função do post usa

Array.isArray funciona em qualquer lugar?

Funciona nos navegadores modernos e no Node sem instalar nada, por ser um recurso nativo da linguagem

Leia também

Subscribe
Notify of
guest

0 Comentários
Oldest
Newest Most Voted
Inline Feedbacks
View all comments

Formações

Formação Vibe Coding

Formação Vibe Coding

Do Prompt ao Produto: Crie Software Real com IA

  • 474 aulas
  • 20 projetos
  • 39h 27min

Blog | Mais populares