如何使用 javascript 中另一个对象的对值创建对象

How to create object using pair values from another object in javascript

如何使用 javascript

中另一个对象的对值创建对象

输入:

{
firstObject:{
{
"version":"1000",
"issue":"issue1"
},
{
"version":"1001",
"issue":"issue2"
},
{
"version":"1000",
"issue":"issue3"
}

}
}

以上是我的输入,我希望输出如下:

{
newObject:{
"1000":["issue1", "issue3"],
"1001":["issue2"]
}
}

你可以试试这个

let input = {
  firstObject:[
  {
  "version":"1000",
  "issue":"issue1"
  },
  {
  "version":"1001",
  "issue":"issue2"
  },
  {
  "version":"1000",
  "issue":"issue3"
  } 
]
}

function createNewObject( input ){ 
  let output= {};
  input.firstObject.map(( item ) => {
    if( !output[ item.version ]){
      output[ item.version ] =[]
    }
    output[ item.version ].push( item.issue )
  })

  return({
    newObject: output
  })
}

console.log( createNewObject( input ))

您的输入不是 valid JSON。 firstObject 应该是数组而不是对象。

演示

var obj = {
 "firstObject": [{
   "version": "1000",
   "issue": "issue1"
  },
  {
   "version": "1001",
   "issue": "issue2"
  },
  {
   "version": "1000",
   "issue": "issue3"
  }
 ]
};

var newObject = {};

obj.firstObject.map((item) => {
    if( !newObject[ item.version ]){
      newObject[item.version] = [];
    }
    newObject[item.version].push(item.issue);
});

console.log({ newObject });