创建具有相同键和值的对象,而不重复数据

Ion*_*zău 3 javascript object ecmascript-6

在ES6中,我们可以:

const key = "foo"
const myObj = { key }
myObj
// => { foo: "foo" }
Run Code Online (Sandbox Code Playgroud)

所以,{ key }等同于{ key: key }.

但是,如何在没有key变量的情况下创建相同的对象?

我希望有类似的东西{ foo: "foo" }.我试过了obj = { "foo" },但是那个扔了.

构建这个对象的正确方法是什么,不使用变量而不重复foo单词?

T.J*_*der 6

但是,如何在没有关键变量的情况下创建相同的对象?

我希望有类似的东西{ foo: "foo" }.我试过了obj = { "foo" },但是那个扔了.

你不能.如果您还没有具有所需名称的变量和所需的值,则必须同时指定名称和值(与问题中的初始示例一样).

如果您的起始点是字符串文字"foo",则必须将其分配给变量并使用该(var x = "foo"; var obj = {}; obj[x] = x;)或写入foo两次(var obj = {foo: "foo"}).

但你说你不想做其中任何一件事,所以答案是:你做不到.