Verificar se o objecto está vazio em JavaScript
-
Utilize
hasOwnProperty()
para verificar se um objecto está vazio em JavaScript -
Utilize
Object.key()
para verificar se um objecto está vazio no JavaScript -
Utilize a biblioteca
Underscore.js
para verificar se um objecto está vazio em JavaScript
Os objectos desempenham um papel significativo no JavaScript, pois permitem-nos estruturar, manter e transferir dados; no entanto, há alturas em que os objectos que recebemos estão vazios. Neste artigo, vamos demonstrar alguns métodos sobre como se pode verificar se um objecto está vazio em JavaScript.
Utilize hasOwnProperty()
para verificar se um objecto está vazio em JavaScript
Podemos verificar se o bem especificado está ou não presente no objecto. No exemplo abaixo, estamos a verificar dois objectos quanto à presença do bem prop
. A função isObjEmpty()
devolve o comando boolean
se o objecto estiver vazio.
Esta função retorna False
se a propriedade especificada estiver presente; caso contrário, retorna True
. Note que este método só é útil se não houver suporte para ECMAScript 5; verifique o seguinte processo se ECMAScript 5 estiver disponível:
const obj1 = {
one: 1,
two: 2,
three: 3
};
const obj2 = {};
console.log('Is Object 1 Empty? : ', isObjEmpty(obj1));
console.log('Is Object 2 Empty? : ', isObjEmpty(obj2));
function isObjEmpty(obj) {
for (var prop in obj) {
if (obj.hasOwnProperty(prop)) return false;
}
return true;
}
Resultado:
Is Object 1 Empty? : false
Is Object 2 Empty? : true
Utilize Object.key()
para verificar se um objecto está vazio no JavaScript
No exemplo anterior, vimos como podemos verificar se o objecto está vazio em JavaScript; no entanto, ocorrem resultados diferentes se tivermos o apoio do ECMAScript 5.
Neste exemplo, vamos utilizar o comando Object.keys()
para verificar se o objecto tem alguma chave. Se o comprimento das chaves for zero, então está vazio; caso contrário, não está vazio.
const obj1 = {
one: 1,
two: 2,
three: 3
};
const obj2 = {};
console.log('Is Object 1 Empty? : ', isObjEmpty(obj1));
console.log('Is Object 2 Empty? : ', isObjEmpty(obj2));
function isObjEmpty(obj) {
return Object.keys(obj).length === 0;
}
Resultado:
Is Object 1 Empty? : false
Is Object 2 Empty? : true
Utilize a biblioteca Underscore.js
para verificar se um objecto está vazio em JavaScript
Outra maneira fácil de verificar se não há dados num objecto é utilizando a biblioteca Undescore.js
; é uma biblioteca JavaScript que tem vários métodos úteis. Um dos métodos é _.isEmpty()
, que retorna verdadeiro se o objecto estiver vazio.
Podemos incluir a biblioteca especificando o seu URL na etiqueta <script>
. Além disso, podemos utilizar um sublinhado para aceder às suas funções como o seu nome sugere.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Empty Object Example</title>
<script src="https://cdn.jsdelivr.net/npm/underscore@1.11.0/underscore-min.js"></script>
</head>
<body>
<script>
const obj1 = { one: 1, two: 2, three: 3 };
const obj2 = {};
console.log("Is Obj1 Empty? : ", _.isEmpty(obj1));
console.log("Is Obj2 Empty? : ", _.isEmpty(obj2));
</script>
</body>
</html>
Resultado:
Is Obj1 Empty? : false
Is Obj2 Empty? : true
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn