Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
Schauen wir uns ein
weiteres Vererbungs-Muster an – das Vererben durch Kopieren von Eigenschaften. In diesem Muster erhält ein Objekt seine Funktionalität von einem anderen Objekt, indem es einfach kopiert wird. Hier ein Beispiel für die Implementierung einer Funktion extend():
function extend(parent, child) {
var i;
child = child || {};
for (i in parent) {
if (parent.hasOwnProperty(i)) {
child[i] = parent[i];
}
}
return child;
}
Es handelt sich hier um eine einfache Implementierung – es werden schlicht die Member des Eltern-Objekts durchlaufen und kopiert. In dieser Implementierung ist child optional – wenn Sie kein bestehendes Objekt übergeben, das erweitert werden soll, wird ein nagelneues erstellt und zurückgegeben: