我想在此处将变量传递到monthHash变量的键中:

 var monthHash = new Array();
  monthHash["JAN"] = "Jan";
  monthHash["FEB"] = "Feb";
  ...
  monthHash["NOV"] = "Nov";
  monthHash["DEV"] = "Dec";

这样我就可以做到这一点:
alert(monthHash[the_variable]);

而不是使用开关盒来解决这个问题。

但是,当我尝试时,会出现错误。有没有办法让变量指示JavaScript中键的字符串标识符?

最佳答案

我只能看到未定义the_variable的地方(可能会收到ReferenceError的地方),才能看到您的代码会在哪里生成错误。

但是,Array不能用于键/值对。您应该改为使用对象:

var monthHash = {};
monthHash['JAN'] = 'Jan';
monthHash['FEB'] = 'Feb';
monthHash['NOV'] = 'Nov';
monthHash['DEC'] = 'Dec';

var the_variable = 'NOV';

alert(monthHash[the_variable]);  // alerts 'Nov'

关于javascript - JavaScript关联数组(按变量),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3097102/

10-09 16:58