在 JavaScript 中,构造对象时,您可能会遇到想要使用变量动态设置键值的情况。但是,通过简单地遵循常见的对象初始化语法,您将观察到键设置为变量的名称而不是预期值。
以下代码片段说明了该问题:
var key = "happyCount"; myArray.push({ key: someValueArray });
此操作后检查 myArray 会发现每个对象的键是“key”,而不是键中存储的预期值
要解决此问题,请在使用括号符号 [] 设置键之前创建对象。此语法允许您从变量动态设置键的值。
var key = "happyCount"; var obj = {}; obj[key] = someValueArray; myArray.push(obj);
现在,创建的对象将把键设置为键变量的值。
ECMAScript 2015 (ES6) 引入了计算属性名称,该功能允许在定义对象时更加灵活动态按键。此语法使用方括号 [] 括住属性名称,属性名称可以是任何有效的 JavaScript 表达式。
const yourKeyVariable = "happyCount"; const someValueArray = [...]; const obj = { [yourKeyVariable]: someValueArray, };
此代码实现与前面的解决方案相同的结果,但使用计算属性名称语法,即更加简洁和富有表现力。
以上是如何在 JavaScript 中使用变量动态设置对象键?的详细内容。更多信息请关注PHP中文网其他相关文章!