JavaScript 繼承:揭開事實標準
儘管有大量文章深入研究JavaScript 繼承,但由於可用方法過多,經常會出現混亂。為了澄清這個神秘的主題,我們探索了最被接受的方法,並為您的特定場景提供量身定制的指導。
選擇適當的繼承機制
理解之間的差異new 和Object.create 對於選擇最佳繼承至關重要戰略。雖然這兩種技術都有助於物件創建,但它們具有不同的目的。 Object.create 產生一個繼承自另一個物件的新對象,而 new 另外呼叫建構子。
應用於您的用例
您的目標是建立一個名為 Model 的基礎對象,並具有可擴展子類 RestModel 和 LocalStorageModel。在這種情況下,Object.create 成為首選方法。這種方法符合您建立原型繼承層次結構而不呼叫模型建構函數的意圖。
<br>RestModel.prototype = Object.create(Model.prototype);<br> pre><p><strong>呼叫建構子類別</strong></p><p>如果需要呼叫RestModel 的模型建構函數,則不能透過繼承來完成。相反,<strong>call()</strong> 或 <strong>apply()</strong> 提供觸發建構子執行的方法。 </p><p></p><pre class="brush:php;toolbar:false"><br>function RestModel() {<pre class="brush:php;toolbar:false">Model.call(this); // Apply Model's constructor on the new object ...
}
透過理解這些概念,您可以自信地在JavaScript 中實作繼承,從而為您的應用程式提供所需的靈活性和可擴充性。
以上是JavaScript 繼承:Object.create 與 new:哪個適合您?的詳細內容。更多資訊請關注PHP中文網其他相關文章!