Maison > interface Web > js tutoriel > Comment vérifier efficacement les objets JavaScript vides ?

Comment vérifier efficacement les objets JavaScript vides ?

Susan Sarandon
Libérer: 2024-12-13 13:03:25
original
795 Les gens l'ont consulté

How to Effectively Check for Empty JavaScript Objects?

Vérification des objets JavaScript vides

Lorsque vous travaillez avec JavaScript, vous pouvez rencontrer des scénarios dans lesquels votre application renvoie un objet vide, noté { } . Déterminer le vide d’un objet est essentiel pour une bonne gestion des données. Cet article explore plusieurs méthodes pour tester les objets JavaScript vides.

Méthode 1 : for...in Loop et Object.hasOwn (ECMA 2022)

Cette méthode utilise une boucle for...in pour parcourir les propriétés d'un objet. Si des propriétés propres existent, cela indique que l'objet n'est pas vide, renvoyant false. Sinon, il renvoie vrai.

function isEmpty(obj) {
  for (const prop in obj) {
    if (Object.hasOwn(obj, prop)) {
      return false;
    }
  }

  return true;
}
Copier après la connexion

Méthode 2 : Object.keys et longueur

Bien que simple, cette approche est moins efficace car elle crée un tableau de tous noms de propriétés, qui ont une complexité de O(N).

function isEmpty(obj) {
  return Object.keys(obj).length === 0;
}
Copier après la connexion

Méthode 3 : Vérifie le type de { Objets de type }

Pour différencier les objets vides ({ }) des autres objets sans propriétés propres (par exemple, les dates), des vérifications de type sont nécessaires :

function isEmptyObject(value) {
  if (value == null) {
    return false; // null or undefined
  }

  if (typeof value !== 'object') {
    return false; // boolean, number, string, function, etc.
  }

  const proto = Object.getPrototypeOf(value);

  if (proto !== null && proto !== Object.prototype) {
    return false; // `Object.create(null)` or other objects with custom prototypes
  }

  return isEmpty(value); // check for any own properties
}
Copier après la connexion

Méthode 4 : Utiliser des bibliothèques tierces

De nombreuses bibliothèques JavaScript populaires fournissent des fonctions pour vérifier les objets vides, tels que comme :

  • jQuery : jQuery.isEmptyObject
  • lodash : _.isEmpty
  • Souligné : _.isEmpty
  • Hoek : Hoek.deepEqual
  • ExtJS : Ext.Object.isEmpty
  • AngularJS (version 1) : angulaire.equals

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal