是否有任何方法使用對象函數來設置對象屬性? 例如:使用對象的方法設置對象的屬性值
var Object={
init: function(){
this.newParam=alert("ok");// This should alert ok while called Object.newParam()
}
}
在此先感謝。
是否有任何方法使用對象函數來設置對象屬性? 例如:使用對象的方法設置對象的屬性值
var Object={
init: function(){
this.newParam=alert("ok");// This should alert ok while called Object.newParam()
}
}
在此先感謝。
不,它不會按照您的期望被調用。它會在對象初始化的時候被調用。並且obj.newParam
將具有返回值alert("ok")
,即] undefined
。
你必須重寫代碼像下面來實現你想要什麼,
var obj = {
init: function(){
this.newParam= function() {
alert("ok");// This should alert ok while called Object.newParam()
}
}
}
而且使用名稱Object
您的變量是一個風險較大的一個,當你在全球範圍內。
嘗試類似:
var Object={
init: function(){
return {
newParam :function() {
alert("ok");// This should alert ok while called Object.newParam()
}
}
}
}
console.debug(Object.init().newParam());
注意,當的init()被調用它返回一個對象。您可以使用該對象,並調用從newParam功能 - 在https://jsfiddle.net/krwxoumL/
Object.init().newParam()
小提琴,我不希望出現這種情況。我想要Object.newparam來代替Object.init()。newparam但我不想用'newparam:this.init()來手動設置它的值。newparam' –
好吧,不知道我是否理解正確但看起來像是類似於http://stackoverflow.com/questions/1789892/access-parent-object-in-javascript –