如何使用Angular 2 / lodash将一个Json拆分为多个Json

时间:2018-06-19 11:39:32

标签: json angular lodash

我有一个json,我想将每个键值对拆分为新的json对象。

输入:

 tokenData = [{
  "firstname" : "Priya",
  "from": "21-09-2001",
  "to": "22-08-2001",
  "address": "zczxczxczx"
}]

预期结果:

  tokenItems = [
    {"firstname" : "Priya"},
    {"from": "21-09-2001"},
    {"to": "22-08-2001"},
    {"address": "zczxczxczx"}
  ];

2 个答案:

答案 0 :(得分:1)

您可以在没有lodash的情况下实现这一目标。

使用Object.entries,获取键/值,然后使用map函数创建所需的对象结构。

const tokenData = [{
   "firstname" : "Priya",
   "from": "21-09-2001",
   "to": "22-08-2001",
   "address": "zczxczxczx"
}];

const newTokenData = Object.entries(tokenData[0])
                           .map(([key, val]) => ({ [key]: val }));

console.log(newTokenData);

答案 1 :(得分:0)

为什么要使用lodash,您只需使用计划javascript就可以得到它,您需要像这样迭代每个对象的键/值对-

    const tokenData = [{
       "firstname" : "Priya",
       "from": "21-09-2001",
       "to": "22-08-2001",
       "address": "zczxczxczx"
    }];
    
    let newArr = []
    for (let a in tokenData[0]){
    	newArr.push({[a]: tokenData[0][a]});
    } 
    console.log(newArr);