打字稿Json:添加子项

时间:2018-03-27 18:30:36

标签: arrays json typescript

你好我是json和打字稿的新手。 我需要在json对象下面进行处理,我需要在json下面处理每个childValues,然后将parentValues的属性设置为其子对应属性的总和。

 "parentValues":[{
 "number1": 0,
 "number2": 0,
 "parentId": 1,
 "childValues": [{
         "number1": 10,
         "number2": 20,
         "childId": 1
     },
     {
         "number1": 30,
         "number2": 40,
         "childId": 2
     }
 ]}]

这需要转换为以下内容:

"parentValues":[{
 "number1": 10+30,
 "number2": 20+40,
 "parentId": 1,
 "childValues": [{
         "number1": 10,
         "number2": 20,
         "childId": 1
     },
     {
         "number1": 30,
         "number2": 40,
         "childId": 2
     }
 ]}]

1 个答案:

答案 0 :(得分:0)

解决方案如下,假设我们有对象的数组parentValues

let parentValues = [{
 "number1": 0,
 "number2": 0,
 "parentId": 1,
 "childValues": [{
         "number1": 10,
         "number2": 20,
         "childId": 1
     },
     {
         "number1": 30,
         "number2": 40,
         "childId": 2
     }
 ]}];


for(let i = 0; i < parentValues.length; i++ ) {
   for(let j = 0; j < parentValues[i]["childValues"].length; j++) {
       parentValues[i].number1 = parentValues[i]["childValues"][j].number1;
       parentValues[i].number2 = parentValues[i]["childValues"][j].number2;
   }
}

无论你使用巫婆语言,重要的是逻辑。

这个解决方案有点糟糕,可以改进,可以简洁,但有效:)