1

Ich versuche, seine mögliche zu finden, wenn und Nachteile Hinzufügen eines Objekts zu einem Prototyp, zum BeispielJavascript: Mehrere Methoden zu einem Prototyp hinzufügen?

myObject.prototype = { 

    init: function() { 

    }, 

    runMe: function() { 

    }, 

    removeItems: function() { 

    } 
} 

Wenn diese eigentlich legal? und was ist der Unterschied für jeden separat d tun

myObject.prototype.init = function() {} 

myObject.prototype.runMe = function() {} 

Ich habe versucht der Suche nach MDN-Dokumentation über das Hinzufügen als Objekt, konnte aber nichts finden.

Kann jemand Kommentare zu empfohlenen Möglichkeiten geben, dies zu tun?

Vielen Dank im Voraus

Antwort

2

Entweder Ansatz ist in Ordnung, und Sie sollten wählen, je nachdem, welcher Ansatz macht es einfacher zu machen, was du tust. Wenn dies der einzige Bereich ist, in dem Sie den Prototyp ändern, besteht der einzige sinnvolle Unterschied darin, dass der erste Ansatz die Eigenschaft constructor entfernt, die standardmäßig auf dem Prototyp vorhanden ist.

Aus diesem Grund, wenn Sie die ganze prototype tun überschreiben, sollten Sie sicherstellen, den Konstruktor erneut hinzuzufügen:

myObject.prototype = { 

    init: function() { 

    }, 

    runMe: function() { 

    }, 

    removeItems: function() { 

    }, 
    // right here 
    constructor: myObject 
} 
Verwandte Themen