Neste artigo você vai aprender a como verificar se objeto está vazio em JavaScript de uma forma fácil, apenas utilizando recursos de JS!
Fala programador(a), beleza? Bora aprender mais sobre objetos e JavaScript!
Para esta tarefa temos duas boas abordagens, isso por que a versão de JavaScript ES6 ainda não está totalmente padronizada nos navegadores
Então é interessante ter uma abordagem cross browser e outra que possa ser utilizada nas versões mais recentes da linguagem, para Node ou TypeScript, por exemplo
Vamos então a abordagem padronizada primeiramente!
Nela vamos checar se o objeto possui alguma propriedade e também se o objeto é um objeto vazio
E retornar um booleano baseado nestas verificações feitas, veja o código:
function isEmpty(obj) { for(var prop in obj) { if(obj.hasOwnProperty(prop)) { return false; } } return JSON.stringify(obj) === JSON.stringify({}); } console.log(isEmpty({})); // true console.log(isEmpty({nome: "Matheus"})); // false
Perceba que no primeiro teste temos true, objeto vazio, e na segunda temos false, já que o objeto possui valores
Objeto vazio em ES6
Agora vamos para a próxima abordagem, utilizando a versão ES6+ da linguagem JS
Aqui temos acesso as chaves do objeto e podemos verificar a sua length
Outra possibilidade é também checar a presença de um constructor, já que esta versão da linguagem já o possui
Veja a abordagem:
function isEmpty(obj) { return Object.keys(obj).length === 0 && obj.constructor === Object; } console.log(isEmpty({})); // true console.log(isEmpty({nome: "Matheus"})); // false
Muito mais simples esta abordagem, por que com a evolução da linguagem temos acessos a mais recursos e também mais avançados
Conclusão
Neste artigo vimos como verificar se objeto está vazio em JavaScript
Utilizamos duas abordagens, uma com as funcionalidades padronizadas em todos os navegadores, ou seja antes da versão ES6
Onde verificamos cada uma das propriedades do objeto para então dar o retorno
E já na versão ES6 temos acessos a propriedades novas como as keys, e também podemos validar a presença do constructor
Confira também nosso catálogo de cursos gratuitos, com aulas semanais no YouTube