javascript - 如何让switch语句更高效?
问题描述
我有以下代码
//var r, t, y, f, g, h, c, v, b
switch(event.key) {
case 'r' : input.execute("game_stats_build " + r);
break;
case 't': input.execute("game_stats_build " + t);
break;
case 'y': input.execute("game_stats_build " + y);
break;
case 'f': input.execute("game_stats_build " + f);
break;
case 'g': input.execute("game_stats_build " + g);
break;
case 'h': input.execute("game_stats_build " + h);
break;
case 'v': input.execute("game_stats_build " + v);
break;
case 'b': input.execute("game_stats_build " + b);
break;
}
这是多余的,每次我进行更改时,我都必须进行大量输入。我怎样才能写得更好?
解决方案
你可以这样做:
input.execute("game_stats_build " + window[event.key])
window
但您应该将这些值保存在一个对象中,而不是使用。
例如,而不是:
var t = "something";
var r = "something else"
利用:
var obj = {t: "something", r: "something else"}
接着:
input.execute("game_stats_build " + obj[event.key])
推荐阅读
- linux - 如何防止某些值在 linux 内核调试中被优化掉?
- datastax-astra - 与 Datastax Astra DB 连接后如何维护响应中的数据类型?
- excel - Excel宏删除一个文件夹中所有现有工作表中的第一行
- android - 检测不工作的加速度计、陀螺仪或地磁传感器
- ipfs - 我可以托管共享文件夹并需要权限才能上传到 IPFS 吗?
- express - 重新加载页面时,req.session.cookies 和 req.session.user 对象消失(Nextjs/Expressjs)
- python - 使用令牌连接到 MySQL
- c# - 尝试更改玩家的方向时出错
- reactjs - 在自动完成之外单击时,Material-UI 自动完成输入重置
- r - 我有二进制数据(不同森林中存在/不存在鸟类)并且想知道是否存在包含随机效应的模型