【发布时间】:2013-08-14 19:50:59
【问题描述】:
对不起,我不能更好地表达这个。但我遇到了如下代码:
MyObject.prototype = Object.create(MyObject.prototype);
MyObject.prototype.constructor = MyObject;
而且我似乎无法弄清楚它的作用。 MyObject 在它上面定义是这样的:
function MyObject(options) {
this.someProp = someDefault;
this.otherProp = process(options.something);
// etc...
}
它总是被称为构造函数。我只是想知道前两行提供了什么好处,以及它是否是 Javascript 中的已知模式。
【问题讨论】:
-
你确定作业两边都应该是
MyObject吗? -
这只是向 MyObject 实例的原型链添加了一层(无用的)间接性......你在哪里找到的代码?
-
说真的,为什么人们会这样写JS?
-
目前我不想在这里做出任何判断。我多年来一直在编写 Javascript 编程,但很遗憾地说我仍然没有深入了解原型。只是想弄清楚..
-
好的,但你确定
MyObject.prototype = Object.create(MyObject.prototype);不是真的MyObject.prototype = Object.create(MyOtherObject.prototype);?
标签: javascript