如何在JavaScript中为对象设置动态属性键?

以前,在对象中创建属性是一个两步过程,但是ES6出现使任务非常简单。在只有一个步骤,我们可以动态地创建一个属性。让我们简要地讨论一下。

旧方法(两步法)

示例

在下面的示例中,该属性而不是在对象本身中声明,而是在对象外部声明,使其分为两步。

<html>
<body>
<script>
   let person = 'name';
   let student = {               // step-1
      id: 1,
   };
   student[person] = 'nani';    // step-2
   document.write(JSON.stringify(student));
</script>
</body>
</html>

输出结果

{"id":1,"name":"nani"}


ES6方法

示例

在下面的示例中,对象的属性直接在对象本身中声明,而不是在对象外部进行声明,从而使其成为1步过程

<html>
<body>
<script>
   let person = 'name';
   let student = {
      id: 1,
      [person] : "nani"
   };
   document.write(JSON.stringify(student));
</script>
</body>
</html>

输出结果

{"id":1,"name":"nani"}