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中文网其他相关文章!