Ich bin in die tatsächliche objektorientierte Programmierung mit JavaScript und ich habe auf zwei verschiedene Arten der Erweiterung des Prototyps eines vorhandenen Objekts laufen.Was ist der Unterschied zwischen _.extend (Something.prototype, someObj) und Something.prototype.someFunc = someFunc?
Methode eins:
Something.prototype.someFunc = function() {
// To something usefull
}
Methode zwei (mit Underscore.js):
_.extend(Something.prototype, {
someFunc: function() {
// Do the same but differently
}
}
Was ist der Unterschied zwischen diesen beiden Ansätzen? Welcher gilt als "besser"? Für mich sieht es so aus, als ob die erste Methode besser ist, weil sie einfaches JavaScript verwendet, und die zweite Methode ist die Implementierung von jemand anderem. Aber andererseits haben die Entwickler von underscore.js die Methode _.extend() sicher nicht umsonst hinzugefügt?