![](/img/trans.png)
[英]Passing argument to function in javascript- received as object not variable?
[英]Javascript- Passing variable as method
我的問題是嘗試將通過提示定義的變量傳遞給對象方法。 在我的代碼末尾,我嘗試將變量“ house”傳遞到類構造函數中的“ .teamPick”方法中,但不行。 如果我console.log(house)會顯示'gryffindor',但是當我嘗試傳遞house.teamPick()時,我會收到一條錯誤消息,說“ house.teamPick()不是函數”。 我沒辦法。
function House(color,broom) {
this.color= color;
this.broom= broom;
this.teamPick= function() {
alert("Throw on your"+" "+ this.color + " " + "robes, jump on your \n" + this.broom + ", " + "and let's play some Quidditch!")
};
};
var gryffindor= new House('red', 'Firebolt');
var house= prompt('What team do you choose?').toLowerCase();
if(house=== "gryffindor") {
house.teamPick();
};
您在腳本末尾使用了錯誤的值( house
)。 house
是一個字符串值,而不是House
的實例。
gryffindor
是House
的實例(使用new House()
創建),因此您要使用它。
您希望最后三行是這樣的:
if(house === "gryffindor") {
gryffindor.teamPick();
};
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.