Heim  >  Artikel  >  Web-Frontend  >  So überprüfen Sie, ob ein JavaScript-Objekt leer ist

So überprüfen Sie, ob ein JavaScript-Objekt leer ist

不言
不言Original
2018-11-06 17:44:092322Durchsuche

In diesem Artikel erfahren Sie, wie Sie überprüfen können, ob ein JavaScript-Objekt leer ist. Schauen wir uns den spezifischen Inhalt an.

Mit JavaScript kann es schwierig sein zu überprüfen, ob ein Objekt leer ist. Bei Arrays können Sie dies leicht mit myArray.length überprüfen, aber andererseits funktionieren Objekte nicht auf diese Weise und der beste Weg, um zu überprüfen, ob ein Objekt leer ist oder nicht, ist die Verwendung einer Hilfsfunktion wie unten.

function isEmpty(obj) {
    for(var key in obj) {
        if(obj.hasOwnProperty(key))
            return false;
    }
    return true;
    }

Wenn Sie ein leeres Objekt haben, können Sie die obige Funktion verwenden, um zu überprüfen, ob es leer ist.

var myObj = {}; // Empty Object
if(isEmpty(myObj)) {
    // Object is empty (Would return true in this example)
    } else {
    // Object is NOT empty
    }

Alternativ können Sie die isEmpty-Funktion auf den Objektprototyp schreiben.

Object.prototype.isEmpty = function() {
    for(var key in this) {
        if(this.hasOwnProperty(key))
            return false;
    }
    return true;
    }

Dann können Sie ganz einfach überprüfen, ob das Objekt leer ist.

var myObj = {
    myKey: "Some Value"
    }
    if(myObj.isEmpty()) {
    // Object is empty
    } else {
    // Object is NOT empty (would return false in this example)
    }

Das Erweitern des Objektprototyps ist nicht die beste Vorgehensweise, da dies zu Browserproblemen und anderen Problemen mit einigen Frameworks führen kann (es ist in einigen Umgebungen auch nicht immer zuverlässig). Die Beispiele, die ich gegeben habe, haben fast nichts mit Frameworks zu tun.

Dies ist eine nützliche Hilfsfunktion, insbesondere wenn Sie täglich mit vielen Objekten arbeiten.

Das obige ist der detaillierte Inhalt vonSo überprüfen Sie, ob ein JavaScript-Objekt leer ist. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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