【发布时间】:2013-07-26 16:24:08
【问题描述】:
继续这个question,prototype.constructor 是干什么用的?
我认为只需这样做:
new some_object()
函数对象变成了构造函数。我不明白您为什么需要以这种方式设置它。
some_object.prototype.constructor = some_object;
【问题讨论】:
-
你不需要设置它... new 为你做的。
-
constuctor属性用于当您收到一个对象并想知道是什么函数构造它时使用。 -
@dandavis 完全覆盖原型时需要(重新)设置它。
Foo.prototype = { ... }clobbersFoo.prototype.constructor和Object。 -
@apsillers :你刚才提到了一个常见的误解:constructor 是指构造函数,当你改变函数的原型时它不会改变。再次设置构造函数是没有用的。 (如有疑问,请参阅jsbin.com/iraseg/1/edit 并查看控制台结果)。
标签: javascript