Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/413.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使switch语句更有效?_Javascript - Fatal编程技术网

Javascript 如何使switch语句更有效?

Javascript 如何使switch语句更有效?,javascript,Javascript,我有以下代码 //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_st

我有以下代码

//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])
但不应使用
窗口
,而应将这些值保存在对象中

例如,而不是:

var t = "something";
var r = "something else"
使用:

然后:

input.execute("game_stats_build " + obj[event.key])
也许是这样:
input.execute("game_stats_build " + obj[event.key])