Javascript 什么';定义对象时的方括号是什么?

Javascript 什么';定义对象时的方括号是什么?,javascript,Javascript,我注意到我们可以使用以下语法定义对象: const a={ [“测试”]:1, [“tmp”]:2, }; 它和下面的一样吗 const b={ "测试":一,, "tmp":2,, }; 如果是这样,第一个代码块中的[]是用于什么的?它是一种称为计算属性名的ES6功能 当使用它时,一个很大的好处是您还可以将变量作为键名。比如一个包含变量的字符串 const a = { [`obj${someVariable}`]: 1, [`obj${anotherVariable}`]: 2,

我注意到我们可以使用以下语法定义对象:

const a={
[“测试”]:1,
[“tmp”]:2,
};
它和下面的一样吗

const b={
"测试":一,,
"tmp":2,,
};

如果是这样,第一个代码块中的
[]
是用于什么的?

它是一种称为计算属性名的ES6功能
当使用它时,一个很大的好处是您还可以将变量作为键名。比如一个包含变量的字符串

const a = {
  [`obj${someVariable}`]: 1,
  [`obj${anotherVariable}`]: 2,
};
const someVariable=4;
常数另一个变量=3;
常数a={
[`obj${someVariable}`]:1,
[`obj${anotherVariable}`]:2,
};

log(a)
对于
[]
,属性名称可以是任意表达式