所以我試圖圍繞不同的方式來創建一個對象。構造器模式和原型模式之間的區別
我來到創造對象的原型模式。
現在我在下面寫了兩個函數,但是我看不出兩者之間的功能差別是什麼?什麼時候使用構造函數模式,什麼時候使用Prototype模式?
構造模式
function Fruit(){}
Fruit.color = "Yellow",
Fruit.fruitName = "Banana",
Fruit.nativeTo = "SomeValue"
原型模式
function Fruit(){}
Fruit.prototype.color = "Yellow",
Fruit.prototype.fruitName = "Banana",
Fruit.prototype.nativeTo = "SomeValue"
我覺得最大的區別之一是創建水果的新實例與它的所有方法和屬性的能力使用Prototype模式。在您的構造函數示例中:如果您嘗試爲像Fruit x = new Fruit()這樣的Fruit創建一個新對象,然後嘗試訪問像x.color這樣的屬性,那麼您將在Prototype中執行相同的操作時得到未定義的對象, 」。 – gothical