3 回答

TA貢獻(xiàn)1876條經(jīng)驗(yàn) 獲得超6個(gè)贊
好吧,既然您已經(jīng)有一個(gè)將鍵碼映射到函數(shù)的對(duì)象,您可以像這樣簡(jiǎn)單地調(diào)用它們:
document.addEventListener("keydown", checkKeyPressed, false);
function checkKeyPressed(e) {
if (keyboard[e.keyCode] != undefined) {
keyboard[e.keyCode](e); //<-- you need to call the function, once you get it...
}
};
或者甚至,
function checkKeyPressed(e) {
keyboard[e.keyCode] ? keyboard[e.keyCode](e) : null;
};

TA貢獻(xiàn)1856條經(jīng)驗(yàn) 獲得超11個(gè)贊
document.addEventListener("keydown", checkKeyPressed, false);
function checkKeyPressed(e) {
const action = keyboard[e.keyCode];
if (action) action();
}

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超9個(gè)贊
你可以只用一個(gè) if 語(yǔ)句
function checkKeyPressed(e) {
if (keyboard[e.keyCode])
keyboard[e.keyCode]();
}
如果e.keyCode不是對(duì)象鍵盤(pán)中的值之一,keyboard[e.keyCode]將返回undefined并且內(nèi)部代碼將不會(huì)運(yùn)行。
您還需要在函數(shù)后添加括號(hào)才能實(shí)際調(diào)用它
添加回答
舉報(bào)