尝试为 JavaScript 对象创建动态键时,使用此语法
jsObj{ 'key' i} = 'example' 1;不会起作用。正确的方法是使用方括号:
<code class="js">jsObj['key' + i] = 'example' + 1;</code>
在 JavaScript 中,数组是一种特殊类型的对象,其区别在于它们维护一个反映数字属性(索引)加一计数的长度属性。标准对象不会模仿这种特殊行为,但方括号运算符在两种类型上的工作方式相同。
对于在数组实例上设置带有数字键的属性,长度属性将自动更新以反映最大的数字键。但是,对于普通对象,不会发生此类更新。
需要注意的是,将数组实例序列化为 JSON 只包含以数字命名的属性,不包括任何其他属性。
在 ES6 中,您可以使用计算属性名称以获得更简洁的语法:
<code class="js">var key = 'DYNAMIC_KEY', obj = { [key]: 'ES6!' };</code>
以上是如何在 JavaScript 对象中动态设置键?的详细内容。更多信息请关注PHP中文网其他相关文章!