JavaScript 繼承:Object.create 與new
JavaScript 中的繼承概念可能會令人困惑,因為有多種實現方法它。本文旨在闡明最受接受的方法,並為您的特定場景提供解決方案。
瞭解 Object.create 和 new
Object.create 是一個建立物件的方法透過從現有物件繼承來建立新物件。當您想要建立基礎物件然後使用其他屬性和方法來擴展它時,這非常有用。 Object.create 的語法為:
Object.create(prototype[, propertiesObject])
另一方面,new 關鍵字用於建立物件的新實例並呼叫它的建構子。 new 的語法是:
new ConstructorFunction([arguments])
選擇正確的繼承方法
Object.create 和新的取決於您的具體要求。 Object.create 非常適合建立要繼承的基礎物件而不呼叫其建構函式。例如:
const Model = { // Base object properties and methods... }; const RestModel = Object.create(Model);
但是,如果您想要在繼承物件上呼叫基礎物件的建構函數,那麼您應該使用 new。例如:
function Model() { // Base object constructor... } function RestModel() { Model.call(this); // Additional properties and methods... }
適合您的場景的解決方案
在您的情況下,您希望從 Model 基礎物件繼承 RestModel。要使用 Object.create 實現此目的,您可以執行以下操作:
RestModel.prototype = Object.create(Model.prototype);
這將建立一個繼承自模型原型。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3