Heim > Web-Frontend > js-Tutorial > Wie kann man effektiv nach leeren JavaScript-Objekten suchen?

Wie kann man effektiv nach leeren JavaScript-Objekten suchen?

Susan Sarandon
Freigeben: 2024-12-13 13:03:25
Original
795 Leute haben es durchsucht

How to Effectively Check for Empty JavaScript Objects?

Überprüfung auf leere JavaScript-Objekte

Bei der Arbeit mit JavaScript kann es vorkommen, dass Ihre Anwendung ein leeres Objekt zurückgibt, das als { } bezeichnet wird. . Die Bestimmung der Leere eines Objekts ist für die ordnungsgemäße Datenverarbeitung von wesentlicher Bedeutung. In diesem Artikel werden verschiedene Methoden zum Testen auf leere JavaScript-Objekte untersucht.

Methode 1: for...in Loop und Object.hasOwn (ECMA 2022)

Diese Methode verwendet eine for...in-Schleife zum Durchlaufen der Eigenschaften eines Objekts. Wenn eigene Eigenschaften vorhanden sind, zeigt dies an, dass das Objekt nicht leer ist, und gibt „false“ zurück. Andernfalls wird true zurückgegeben.

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

  return true;
}
Nach dem Login kopieren

Methode 2: Object.keys und Länge

Dieser Ansatz ist zwar unkompliziert, aber weniger effizient, da er ein Array von allem erstellt Eigenschaftsnamen, die eine Komplexität von O(N) haben.

function isEmpty(obj) {
  return Object.keys(obj).length === 0;
}
Nach dem Login kopieren

Methode 3: Typprüfungen für { }-ähnliche Objekte

Um zwischen leeren Objekten ({ }) und anderen Objekten ohne eigene Eigenschaften (z. B. Datumsangaben) zu unterscheiden, sind Typprüfungen notwendig:

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
}
Nach dem Login kopieren

Methode 4: Verwendung von Bibliotheken von Drittanbietern

Viele beliebte JavaScript-Bibliotheken bieten Funktionen zum Überprüfen leerer Objekte, z als:

  • jQuery: jQuery.isEmptyObject
  • lodash: _.isEmpty
  • Unterstrich: _.isEmpty
  • Hoek: Hoek.deepEqual
  • ExtJS: Ext.Object.isEmpty
  • AngularJS (Version 1): angle.equals

Das obige ist der detaillierte Inhalt vonWie kann man effektiv nach leeren JavaScript-Objekten suchen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage