我正在学习如何使用箭头功能,并且尝试在下面转换我的代码。 funcCall和enterKey存在作用域问题。我相信箭头功能应该可以解决这个问题。
function pressKey(funcCall, enterKey = 13) {
document.addEventListener("keydown", _onKeyDown);
}
function _onKeyDown(e) {
if(e.keyCode === enterKey) {
e.preventDefault();
funcCall();
}
}
最佳答案
您需要在_onKeyDown
范围内创建pressKey
,以便它可以通过闭包访问funcCall
和enterKey
:
function pressKey(funcCall, enterKey = 13) {
function _onKeyDown(e) {
if(e.keyCode === enterKey) {
e.preventDefault();
funcCall();
}
}
document.addEventListener("keydown", _onKeyDown);
}
是否使用箭头功能无关紧要。