在一行中创建具有变量键和值的新对象。

5
我正在寻找一种简单的语法,可以让我创建一个只有一个属性并设置该属性值的新对象。以下是一个示例。我希望能够在一行上完成这个操作。
let parent = 'jackets',
let responses = [{'color':'red', 'size':'medium'}]
let tmp = {}
tmp[parent] = responses
return tmp

应记录:

{
 "jackets": [
    {
     'color':'red',
     'size':'medium'
    }
  ]
}

我曾经以为这个功能在es-spec中可以实现,但是使用babel-2015预设时无法生效。

let jackets = {`${parent}`: responses}

2个回答

6

这对我有效:

*注意:我将结果输出到控制台。打开控制台查看结果。

const responses = [{'color':'red', 'size':'medium'}]
const jackets = "jackets"
const A = {[jackets]: responses}
console.log(A)
<script src="https://cdnjs.cloudflare.com/ajax/libs/babel-core/6.1.19/browser.min.js"></script>

0Aconst%20A%20%3D%20%7B%5BL%5D%3A%20responses%7D%0Aconsole.log(A)%0A

const jackets = {[parent]: responses}
console.log(jackets)

// gives

{"jackets":[{"color":"red","size":"medium"}]}

注意:其他人比我先进入了。

4

这里也有 Babel 文档:https://babeljs.io/docs/learn-es2015/#enhanced-object-literals - nemoinho

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接