[英]How to Call a Variable from another Function within the same Object?
我只想知道是否有一種簡單的方法可以從同一Object內的另一個函數調用變量?
var comedy = {
schadenfreude: function() {
var number = prompt("Provide me a number.");
},
irony: function() {
this.schadenfreude();
for(i = 0; i < this.schadenfreude.number(); i++){
return i;
}
}
};
console.log(comedy.irony());
在此示例中,我希望從schadenfreude function
獲取var number
,並在irony function
for循環中使用該提示號。 謝謝您的幫助。
“ schadenfreude”函數中的“ number”變量是該函數的本地變量。 即使您能夠做到(您無法做到),也不會帶來任何好處。
您(可能)想要的是:
var comedy = {
number: 0,
schadenfreude: function() {
this.number = prompt("Provide me a number.");
},
irony: function() {
this.schadenfreude();
for(i = 0; i < this.number; i++){
alert(i);
};
}
};
console.log(comedy.irony());
或者,您可以讓“ schadenfreude”將值分配給對象上的“ number”屬性,以便在“ irony”函數中引用this.number
。 在任何一種情況下,正如我在代碼的注釋中所指出的那樣,您的for
循環具有該return
語句這一事實意味着,如果用戶給您任何非負數,則“諷刺”函數將始終返回零,否則undefined
。
聽起來您想從定義在同一對象上的另一個成員中獲取局部變量。 這不是直接可能的。 局部變量的作用域是定義函數/成員,無法直接訪問它們。 該函數必須以某種方式將它們顯式返回給調用方,以便對其進行訪問
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.