在 foreach 内部创建一个对象

Dib*_*ish 1 javascript arrays object

我需要在 foreach 循环中创建以下格式的对象

var array = ['sent', 'flag']
Run Code Online (Sandbox Code Playgroud)

需要一个类似以下格式的输出对象

obj = {
sent: true,
flag: true
}
Run Code Online (Sandbox Code Playgroud)

试过

array.forEach(function(data){
    console.log('data', data);
    var obj = {}
    obj.data = true;
})
Run Code Online (Sandbox Code Playgroud)

非常感谢您的帮助。谢谢你。

Aru*_*hny 7

您需要在循环外创建对象,然后使用括号表示法来分配属性。

在数组每次迭代的代码中,您正在创建一个本地对象并设置一个data在其中调用的属性。

var array = ['sent', 'flag'];

var obj = {}
array.forEach(function(data) {
  obj[data] = true;
})

document.body.innerHTML = JSON.stringify(obj)
Run Code Online (Sandbox Code Playgroud)