Javascript - 当标识符字符串存储在var中时访问对象成员

时间:2010-02-27 23:40:28

标签: javascript

我有一个非常简单的问题(和暂定的答案),我只想看看是否有更好的答案。

当成员标识符存储在另一个变量中时,如何在javascript中访问对象成员?例如:

state = 'sync';

messages = {
  'sync': 'asdf',
  'ready': 'asdf',
  'complete': 'asdf'
};

的可能性:   1. message = eval('messages.' + state);

  1. 将消息转换为哈希(在原型或jquery中 - 不确定jquery)并通过框架的方法访问
  2. 还有其他方法吗?更清洁吗?在php中,它很简单$message = $messages->$sync

    我确定这个问题已被多次回答,但很难找到...当我搜索'变量变量'时,我得到的只是eval响应

    由于

1 个答案:

答案 0 :(得分:9)

var message = messages[state];

JavaScript中的每个对象不仅是更常见的对象,而且还是由其成员填充的字典。