0

我想在创建对象期间使用动态键名。

var myKey = 'text';
var myObj = {
    [myKey]: 'Hello'  // not working
};
alert(myObj.text);

我知道您可以在创建对象后在下一行执行此操作myObj[key] = 'someValue',但我很好奇在您创建对象时执行此操作。

关于它有很多类似的问题,但它们都是在使用[]符号创建对象之后进行的。

4

1 回答 1

1

节省一行真的值得吗?我想如果你真的想成为hacky,你可以这样做:

var myKey = 'text';
var myObj = JSON.parse( '{"' + myKey + '": "Hello"}' );
alert(myObj.text);

我实际上只是声明对象并设置密钥

var myKey = 'text';
var myObj = {};
myObj[myKey] = "Hello";
alert(myObj.text);
于 2013-08-27T00:09:19.827 回答