【发布时间】:2019-05-29 21:55:54
【问题描述】:
考虑这样的事情:
const keyAction = {
a() {
console.log("You've pressed 'a'");
},
b() {
console.log("You've pressed 'b'");
},
c() {
console.log("You've pressed 'c'");
}
}
document.addEventListener('keydown', e => keyAction[e.key]());
这是一种不好的做法吗?有什么理由不这样做吗?
【问题讨论】:
-
为什么要创建3个函数?创建 1 并在其中使用 e.key
-
@Justcode what if ,如果这些函数有不同的实现
-
@brk 喜欢吗?我们可以在其中调用另一个函数。是的,我也同意这个没有错
-
这样做绝对没有错。请记住在调用之前检查
keyAction[e.key]是否未定义。