繁体   English   中英

对象属性名称中的变量

[英]Variable in the object properties name

我想这样设置对象:

var x = 20;
var y = 30;
var z = {
         values: { 
                  x: '24',
                  y: '60'  }, 
         value: x
         };

我希望变量z看起来:

var z = {
         values: { 
                  20: '24',
                  30: '60'  }, 
         value: 20
         };

将它们放在square括号中。 这通常称为计算属性名称,它允许将变量放在要计算的方括号中

 var x = 20; var y = 30; var z = { values: { [x]: '24', [y]: '60' }, value: x }; console.log(z) 

brk发布的方括号解决方案很好,但只能在与Internet Explorer不同的浏览器中使用。 在IE11下,您需要执行以下操作:

var x = 20;
var y = 30;
var z = {
         values: { }, 
         value: x
        };

z['values'][String(x)] = '24';
z['values'][String(y)] = '60';

console.log(z);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM