如何通过匹配对象属性创建新对象?

时间:2019-01-25 20:11:16

标签: javascript arrays dictionary object

我有一个对象数组,尝试根据相似的日期将它们组合在一起。例如,这是我开始的对象数组:

var array = [
      {
        startDate: "2018-11-23",
        name: "Enrollment",
        place: "room 2"

      },{
        startDate: "2018-11-23",
        name: "Breakfast",
        place: "break room"
      },{
        startDate: "2019-11-15",
        name: "Training",
        place: "room 10"

      }];

我尝试创建一个for循环,该循环遍历数组中的每个项目,以查看startDate是否与对象中的任何其他startDate匹配,但由于缺少对for循环的误解,我言归正传应该迭代一个数组,然后在一个对象内分配一个对象,以使“名称”和“位置”彼此关联。

我需要发生的是一个新对象,其中包含任何共享的日期作为该对象的键,并且“位置”仍与“名称”相关联。这是我从起始数组获得的理想结果:

var output = [
      {
        startDate: "2018-11-23",
        event: {name: "Enrollment" 
                place: "room 2"}
        event2: {name: "Breakfast"
                place: "room  10"}
      },{
        startDate: "2019-11-15",
        name: "Training"
      }];

0 个答案:

没有答案