将数组值设置为简单对象的javascript对象

将数组值设置为简单对象的javascript对象,javascript,object,Javascript,Object,我有一个数组作为值的对象 {"Name":["Saam Loan"],"HitType":["Sanction"],"ListNumber":["676"],"ListName":["EU"],"Score":["100"],"LastUpdateDate":["2019-10-17T00:00:00"],"IsPerson":["true"],"IsActive":["true"]} 如何将其转换为 {“名称”:“Saam贷款”,“HitType”:“制裁”} 任何想法const obj={

我有一个数组作为值的对象

{"Name":["Saam Loan"],"HitType":["Sanction"],"ListNumber":["676"],"ListName":["EU"],"Score":["100"],"LastUpdateDate":["2019-10-17T00:00:00"],"IsPerson":["true"],"IsActive":["true"]}
如何将其转换为 {“名称”:“Saam贷款”,“HitType”:“制裁”}

任何想法

const obj={“Name”:[“Saam Loan”],“HitType”:[“approval”],“ListNumber”:[“676”],“ListName”:[“EU”],“Score”:[“100”],“LastUpdateDate”:[“2019-10-17T00:00:00”],“IsPerson”:[“true”,“IsActive”:[“true”]
;
const keyIncludedInDesiredKeys=(键)=>['Name','HitType']。包括(键);
const extractedObject=Object.keys(obj).filter(keycincludedindeiredkeys).reduce((pr,curr)=>({…pr[curr]:obj[curr][0]}),{});

这将返回一个对象,其中包含来自初始obj的每个关键点。然后,您可以只选择您需要的。或者先过滤,然后创建对象

如果所有属性都肯定在数组值中,那么您可以对in循环或
数组执行一个简单的
。reduce

let obj = {"Name":["Saam Loan"],"HitType":["Sanction"],"ListNumber":["676"],"ListName":["EU"],"Score":["100"],"LastUpdateDate":["2019-10-17T00:00:00"],"IsPerson":["true"],"IsActive":["true"]}

let finalAnswer = []

for(let x in obj ) {
   finalAnswer.push({
      [x]: obj[x].toString()
   })
}
// Test data
let obj = {"Name":["Saam Loan"],"HitType":["Sanction"],"ListNumber":["676"],"ListName":["EU"],"Score":["100"],"LastUpdateDate":["2019-10-17T00:00:00"],"IsPerson":["true"],"IsActive":["true"]};

// array.reduce function
let newObj1 = Object.keys(obj).reduce((accumulator, current) => {
  accumulator[current] = obj[current][0];
  return accumulator;
},{})

// OR for in loop
let newObj2 = {};
for(let key in obj) {
  newObj2[key] = obj[key][0];
}

console.log(newObj1) // {Name: "Saam Loan", HitType: "Sanction", ListNumber: "676", ListName: "EU"…}
console.log(newObj2) // {Name: "Saam Loan", HitType: "Sanction", ListNumber: "676", ListName: "EU"…}
链接:

Array.prototype.reduce()


对于…in-

请尝试以下简单的解决方案:

var obj={“名称”:[“Saam贷款”],“HitType”:[“批准”],“列表编号”:[“676”],“列表名”:[“欧盟”],“分数”:[“100”],“最新更新日期”:[“2019-10-17T00:00:00”],“iPerson”:[“真实”],“iActive”:[“真实”];
for(对象的常量键。键(obj)){
obj[keys]=obj[keys][0];
}

控制台日志(obj)
y={Name:x.Name[0],HitType:x.HitType[0]}
怎么样?
function transform (target) {
    const result = {}
    for (const [key, value] of Object.entries(target)) {
        result[key] = value[0]
    }
    return result
}
// Test data
let obj = {"Name":["Saam Loan"],"HitType":["Sanction"],"ListNumber":["676"],"ListName":["EU"],"Score":["100"],"LastUpdateDate":["2019-10-17T00:00:00"],"IsPerson":["true"],"IsActive":["true"]};

// array.reduce function
let newObj1 = Object.keys(obj).reduce((accumulator, current) => {
  accumulator[current] = obj[current][0];
  return accumulator;
},{})

// OR for in loop
let newObj2 = {};
for(let key in obj) {
  newObj2[key] = obj[key][0];
}

console.log(newObj1) // {Name: "Saam Loan", HitType: "Sanction", ListNumber: "676", ListName: "EU"…}
console.log(newObj2) // {Name: "Saam Loan", HitType: "Sanction", ListNumber: "676", ListName: "EU"…}