【问题标题】:Add value in array object [closed]在数组对象中添加值[关闭]
【发布时间】:2020-10-29 13:41:39
【问题描述】:

我有这个数组

var labels = ["Hat", "Chair", "Pen"];

我想要输出

var output = {"Hat": true, "Chair": true, "Pen": true};

如何在 javascript 中转换

谢谢

【问题讨论】:

  • 第二个labels 输出应该是对象吧?现在是无效数组。
  • 您想要的输出不是有效的 javascript 语法。
  • ``` var output = labels.reduce((output, label) => { output[label] = true; return output}, {}) ```
  • @A.DUPONCHEL 这不是 reducer 函数的工作原理。您没有返回聚合器对象。

标签: javascript arrays


【解决方案1】:

你可以使用.reduce:

var labels = ["Hat", "Chair", "Pen"];

const obj = labels.reduce((acc,e) => {
  acc[e] = true;
  return acc;
}, {});

console.log(obj);

【讨论】:

    【解决方案2】:

    var labels = ["Hat", "Chair", "Pen"];
    let labelsObject = {};
    labels.forEach(label => {
      labelsObject[label] = true;
    })
    
    console.log(labelsObject)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-12-18
      • 2017-01-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-22
      • 2016-06-09
      相关资源
      最近更新 更多