Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
方括号Javascript对象键_Javascript_Ecmascript 6 - Fatal编程技术网

方括号Javascript对象键

方括号Javascript对象键,javascript,ecmascript-6,Javascript,Ecmascript 6,有人能解释一下下面在JavaScript中分配键的方法是如何工作的吗 a = "b" c = {[a]: "d"} 返回: Object {b: "d"} 这是新的ES2015(EcmaScript规范正式名称为ES6)。这是ES3/5中的someObject[someKey]赋值的简写: var a = "b" var c = {[a]: "d"} 语法糖用于: var a = "b" var c = {} c[a] = "d"

有人能解释一下下面在JavaScript中分配键的方法是如何工作的吗

a = "b"
c = {[a]: "d"}
返回:

Object {b: "d"}
这是新的ES2015(EcmaScript规范正式名称为ES6)。这是ES3/5中的
someObject[someKey]
赋值的简写:

var a = "b"
var c = {[a]: "d"}
语法糖用于:

var a = "b"
var c = {}
c[a] = "d"

实际上,在创建JavaScript对象时,使用
[]
可以很好地将变量的实际值用作
/
属性

我对上面的答案非常满意,我很感激,因为它让我可以用一个小例子来写这篇文章

我已经在节点REPL(节点shell)上逐行执行了代码


另外,当我们在计算或运行时之前还不知道对象中的内容是什么时,唯一的条件是使用
[]
符号来访问或分配对象中的内容

const animalSounds = {cat: 'meow', dog: 'bark'};

const animal = 'lion';

const sound = 'roar';

{...animalSounds, [animal]: sound};
结果将是

{cat: 'meow', dog: 'bark', lion: 'roar'};

{cat: 'meow', dog: 'bark', lion: 'roar'};