Ich habe ein Javascript-Objekt, das ich als "hashmap" verwenden möchte. Die Schlüssel sind immer Zeichenfolgen, also glaube ich nicht, dass ich etwas so ausgeklügeltes brauche wie das, was in this SO question beschrieben ist. (Ich erwarte auch nicht, dass die Anzahl der Schlüssel über etwa 10 steigt, also bin ich nicht besonders besorgt, dass Lookups O (n) vs. O (log n) usw. sind)Ermitteln, wie viele Felder ein Javascript-Objekt hat
Die einzige Funktionalität, die ich will integrierte Javascript-Objekte scheinen nicht zu haben, ist eine schnelle Möglichkeit, die Anzahl der Schlüssel/Wert-Paare im Objekt, wie Java Map.size zurückgibt. Natürlich könntest du einfach so etwas tun wie:
function getObjectSize(myObject) {
var count=0
for (var key in myObject)
count++
return count
}
aber das scheint irgendwie hacky und Kreisel. Gibt es einen "richtigen Weg", um die Anzahl der Felder im Objekt zu erhalten?
Der einzige Vorschlag, auf Ihre Methode wäre, einen zusätzlichen Parameter hinzufügen auszuschließen/include vererbten Eigenschaften, in diesem Fall würden Sie hasOwnProperty statt nur der einfachen for-Schleife –