【发布时间】:2014-09-13 11:06:52
【问题描述】:
我有这个对象:
var x = function(){
var returnObj = {
constructor:function(ieps){
this.jow = ieps
}
}
returnObj.constructor.prototype.build = function(){
alert(this.jow)
}
return returnObj
}
我想用这个打电话:
var jow = new x.constructor("ieps")
jow.build()
所以我尝试让 build() 执行警报,但我得到一个 x.build() 未定义。
有什么想法吗?
谢谢,
【问题讨论】:
-
我猜你想打电话
x:new (x().constructor)('foo')。只有调用函数才能访问函数的返回值。 -
您正在尝试使用模块模式,但忽略了调用外部函数。只需将
()添加到该函数的末尾即可。 -
请注意,您可能是shouldn't create constructors inside a function(除了该函数应该用作单例)。
标签: javascript object constructor prototype