我想要的是我每天在Python中做的事情。在JS中它不起作用,很可能是因为我在JS中吮吸。
这是我想要的Python代码:
>key = 'just_a_key'
>value = 5
>dict = {key: value}
>dict
{'just_a_key':5}
>dict['just_a_key'}
5
这在JS中不起作用,键只命名为'key'。我知道这是因为我在这里并不是真的创建一个字典,而是在写同样的代码时使用json创建一个对象。所以我现在的问题是:我如何在JS中以编程方式命名对象为“键”(或属性?)?
2条答案
按热度按时间nlejzf6q1#
就像这样:
JavaScript不计算对象文本表示法中属性名称的表达式,但如果使用方括号形式的对象成员运算符,则会计算表达式。
MDN Member Operators
sshcrbum2#
如果您不熟悉JavaScript中的对象-文字语法,请注意这里的重要方面是动态键名(即
[key]
)周围的括号,括号表示key
(或任何其他内容)应被解释为表达式,而不是用作文字值。原始答案/ES6前解决方案: