In einer einfachen Definition ist Object.create(proto[, propertiesObject]) ein Mittel zum Definieren der Zusammenfassung für Objekteigenschaften oder Definieren der Spezifikation von Objekteigenschaften. Es funktioniert wie abstract classes
in einigen der anderen Sprachen, & kein specific object
.
Es ist nicht dort, um einen Standardwert für die Requisiten des Objekts, das erstellt wird, bereitzustellen. Sie haben nur ein Literal (4) angegeben, das offensichtlich kein Objekt ist, das die Spezifikation für die Eigenschaft beschreiben kann. Wir werden hier sehen, dass 4 in seiner eigenen (auch nicht unbedingt) nur ein Teil der Eigenschaften Objekt für Beine ist.
Jetzt. In diesem Sinne versuchen wir, Ihr dog
Objekt mit Object.create()
zu erstellen. Los geht's:
- Anforderungen: wir unseren Hund wollen eine Immobilie mit dem Namen
legs
.
- Design: Wir brauchen
legs
, um beim Aufzählen des Objekts aufzählbar zu sein. wir wollen es nicht anderen mit dem Zuweisungsoperator überlassen. & auch wollen wir 4.
- Implementierung auf Standard: Nun, da wir auf Spezifikation von
legs
Eigenschaft entschieden haben, brauchen wir eine Property Descriptor es zu definieren [den zweiten Parameter von Object.defineProperties(obj, props)
]
Die. props
oben erwähnte zweite ist {& optional} Parameter in Object.create(proto[, propertiesObject])
& hat einige Tasten zum beschreiben Eigenschaften von Objekten:
props {configurable, enumerable, value, writable, get, set}
Lets Code die dog
Objekt:
let dog=Object.create(mammal,{
legs:{
enumerable : true,
writable : false,
value : 4 }
});
Für weitere Klärung, verknüpft beide der Referenzen lesen oben, ist sehr hilfreich.