javascript - 优化/替换多个条件

标签 javascript onkeydown

我想在用户按下任何箭头键时调用相同的函数。我能够用这样的东西来实现它:

if (x.style.display = "block" && 
     (event.keyCode === 37 || 
      event.keyCode === 38 || 
      event.keyCode === 39 || 
      event.keyCode === 40)
   ) 
   { ...}

我只是想知道是否有一种更优雅的方法来实现这一点,也许用更少的代码。

最佳答案

使用Array.includes :

document.addEventListener('keydown', e => {
  if (![37,38,39,40].includes(e.keyCode)) return
  
  console.log('arrow key pressed')
})

或者您可以检查范围。

关于javascript - 优化/替换多个条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54379262/

相关文章:

Javascript:我能做些什么来阻止 403 的发生吗?

WPF - 在 ListView 中使用 KeyDown 构建按键字符串

javascript - 从选择框调用JS函数

javascript - 如何通过使用 jquery 选择选项来显示和隐藏表单

javascript - 在 OOP Javascript 中使用方法的优点

javascript - 使用 js 和 css 隐藏/显示 div 中的内容

javascript - 意外的 Javascript onkeydown 事件和 document.write

java - Android如何检测 "delete"键盘上的按钮按下以删除单个字符?

javascript - 在按键上更改类名

android - onKeyListener 不适用于软键盘(Android)