使用新值Angular / Ionic 3从现有对象创建新对象

时间:2018-11-04 06:56:29

标签: javascript angular ionic3

我正在研究一个使用Angular的Ionic 3项目。

我有一个像下面这样的JSON对象称为person。但是,我有一个离子切换按钮  根据从人那里返回的内容的不同部分。

person  = { name: "peter", job: "programmer", home: "somewhere"};

person_checked_values = {}

为了更新我的切换,我需要传递一个布尔值。键是相同的。我如何动态地构建一个新对象  人员 KEY 返回了什么,但将值设置为true,以便person_checked_values结果如下所示?

person_checked_values  = { name: true, job: true, home: true};

我试图让foreach循环人并从中创建一个新对象,但一直变得不确定和困惑。 FWIW-我也正在使用_lodash,所以如果有可能可以使用该库中的可用帮助。

1 个答案:

答案 0 :(得分:1)

您可以使用Object.keys来获取所有密钥。然后,您可以将其与数组的.reduce函数结合以构建对象。

let person = {
  name: "peter",
  job: "programmer",
  home: "somewhere"
};

let result = Object.keys(person).reduce((obj, key) => {
  obj[key] = true;
  return obj;
}, {})

console.log(result);