确定按下的是字母还是数字 - Javascript

Determine if a Letter or a number was pressed - Javascript

所以我知道我们可以找到是否按下了一个键,并且我们可以通过使用 javascript.

知道按下了哪个键

要确定某个键是否被按下或按下,我们可以使用 jQuery

$( "#some id" ).keydown(function() 

$( "#m" ).keypress(function() 

但这对我来说效果不是很好。 我正在尝试确定是否按下了字母或数字。

但是,为了提高效率,我不想用很大的 if(或 for 循环,更糟)来检查按下的键是字母还是字符(通过比较和检查字符代码)

是否有内置的 javascript 函数来确定是否按下了数字或字母?有没有一种有效的方法来做到这一点?或者我只是把事情复杂化了?

只需检查范围:

if (event.keyCode >= 48 && event.keyCode <= 57) {
    // Number
} else if (event.keyCode >= 65 && event.keyCode <= 90) {
    // Alphabet upper case
} else if (event.keyCode >= 97 && event.keyCode <= 122) {
    // Alphabet lower case
}

这里是对类似问题的详细 [​​=14=]。很好的参考。

数字键盘代码与键盘上方相同:参考自Keyboard Keys and Key Code Values


更新:

使用.key

var x = event.key; // instead of event.keyCode

if (x >= 48 && x <= 57) {
    // Number
} else if (x >= 65 && x <= 90) {
    // Alphabet upper case
} else if (x >= 97 && x <= 122) {
    // Alphabet lower case
}