如何使用const常量设置JSON对象的属性键名?
解决方案
在JavaScript对象字面量里,直接写key: value的形式时,key会被当作字符串字面量处理,不会引用变量的值。要让常量的值成为对象的属性键名,你需要使用方括号语法。
修正后的代码:
const title = 'NAME' const data = { [title]: 'This is title' } console.log(JSON.stringify(data))
执行这段代码后,输出结果就是你期望的:
{"NAME":"This is title"}
原理说明:
- 方括号
[]中的表达式会被求值,变量title的实际值'NAME'会被作为对象的属性键名 - 该语法是ES6及以上版本支持的动态定义对象键名的标准方式
内容的提问来源于stack exchange,提问作者naruen
相关产品推荐
相关产品推荐

