[英]function outputting function text rather than expected output
我已經用幾種不同的方式問過類似的問題,但這是最簡單的版本 - 當 function 發生時,我試圖通過鍵名值列表遞增。 但是,當調用 function 時,我得到的只是 function 本身的文本。 這是一個片段 -
var knlist = {
kn10:"2L1qvq6Tg6rMhEwNshr6dQ",
kn11:"2N_Cl_Gl5fX8_TdLgHP3rQ",
kn12:"2RbpjbhM3_EfzejfPgzwAw",
kn13:"2rP8y_ub_alGrzAK_aZrEg",
kn14:"2S8O9KBwxRlvtZX6kjyS0y",
kn15:"2Ua5EnPVDwd7LGq6UbT2bQ",
kn16:"3_17fNbyu2Yw8ozPx8BmkA",
kn17:"3LB0GSXXVadBlCMhSth3IA",
kn18:"48JvNwKSgvnWT8nqzWtE3Q",
kn19:"4CP5JE_mlMMzjvDMMgXncg",
}
var count = 11
var knx = function knxer(){
if (count === 11) {
knx = "kn11";
} else {
knx = ("kn" + count);
}};
var keyname = (knlist[knx]);
console.log (count)
console.log (knx)
console.log (keyname)
Console.log KNX 只給我 function knxer()
本身的文本,而不是 function 隨着計數增加而返回的預期值。
一旦解決了這個問題,我將讓另一個 function 增加不同位置的計數 - 這是一個完整的 JSFiddle 位置。 一旦完成,我將為登錄頁面添加一個輸入,以便用戶名具有一個可以在有人第一次嘗試調查時估算的值,並一遍又一遍地發布每個完成。
問題是您將knix
分配給您的 function
var knlist = { kn10:"2L1qvq6Tg6rMhEwNshr6dQ", kn11:"2N_Cl_Gl5fX8_TdLgHP3rQ", kn12:"2RbpjbhM3_EfzejfPgzwAw", kn13:"2rP8y_ub_alGrzAK_aZrEg", kn14:"2S8O9KBwxRlvtZX6kjyS0y", kn15:"2Ua5EnPVDwd7LGq6UbT2bQ", kn16:"3_17fNbyu2Yw8ozPx8BmkA", kn17:"3LB0GSXXVadBlCMhSth3IA", kn18:"48JvNwKSgvnWT8nqzWtE3Q", kn19:"4CP5JE_mlMMzjvDMMgXncg", } var count = 11 var knx; function knxer(){ if (count === 11) { knx = "kn11"; } else { knx = ("kn" + count++); // update the count each time it calls }}; knxer(); // call it var keyname = (knlist[knx]); console.log (count) console.log (knx) console.log (keyname)
您必須致電 function,
您只是在console.log()
中提到 function 名稱,
這將調用 function 並將返回值console.log(knx())
這不會調用 function 而是返回 function 主體console.log(knx)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.