JavaScript,如何从数组中创建对象?

Hub*_*NNN 1 javascript

我想转换一个如下所示的数组:

['foo', 'bar', 'baz']
Run Code Online (Sandbox Code Playgroud)

到一个看起来像这样的对象:

{
  foo: true,
  bar: true,
  baz: true,
}
Run Code Online (Sandbox Code Playgroud)

在大多数语言中,您都会有某种形式的fill(keys, value)函数:

var array = ['foo', 'bar', 'baz'];
var object = fill(array, true);
// object = { foo: true, bar: true, baz: true}
Run Code Online (Sandbox Code Playgroud)

但在 JS 中,我只能使用范围而不是键列表找到数字键。有没有一个填充函数可以做到这一点?

Ben*_*ton 5

尝试这个:

const data = ['foo', 'bar', 'baz']
const asObject = Object.fromEntries(data.map(d => ([d, true])))

console.log(asObject)
Run Code Online (Sandbox Code Playgroud)