我有这样的代码.
var key = "anything";
var object = {
key: "key attribute"
};
Run Code Online (Sandbox Code Playgroud)
我想知道是否有办法key用"任何东西" 代替它.
喜欢
var object = {
"anything": "key attribute"
};
Run Code Online (Sandbox Code Playgroud)
小智 152
在ES6中,使用计算属性名称.
const key = "anything";
const object = {
[key]: "key attribute"
// ^^^^^ COMPUTED PROPERTY NAME
};
Run Code Online (Sandbox Code Playgroud)
注意方括号key.您实际上可以在方括号中指定任何表达式,而不仅仅是变量.
tva*_*son 103
是.您可以使用:
var key = "anything";
var json = { };
json[key] = "key attribute";
Run Code Online (Sandbox Code Playgroud)
或者,如果您在编写程序时有手头的值,则只需使用第二种方法.
这应该做的伎俩:
var key = "anything";
var json = {};
json[key] = "key attribute";
Run Code Online (Sandbox Code Playgroud)
在现代Javascript(ECMAScript 6)上,您可以使用方括号将变量括起来:
var key = "anything";
var json = {
[key]: "key attribute"
};
Run Code Online (Sandbox Code Playgroud)