如何将json映射转换为数组?角

时间:2021-07-20 14:37:38

标签: javascript angular typescript

我有像下面这样的 json 示例,我想将此 json 映射转换为数组以便能够在其上循环。

我使用 Object.keys 方法,但我不知道如何为整个 json 设置键 => 值格式。 我需要获取键来制作表格 我知道有管道键值,但这不是我需要的。或者我用错了

示例 json

{
  "pays": "UK"
  "test": [
   [
    "123456", // here i want key id
    "blabla", // here i want key name 
    "lorem ipsum" // here i want key type
   ],
   [
    "654321",
    "ipsum",
    "blabla"
   ]
  ]
}

components.ts

get() {
 this.myService.getUrl().subscribe(data => {
  this.myArray = Object.keys(data).map((key) => {
   return {
    id: key,
    name: data[key]
   }
  }):
 }

2 个答案:

答案 0 :(得分:1)

请试试这个

python -m pip install PyInstaller==4.3

答案 1 :(得分:0)

这是将字符串数组转换为 JSON 数组的一种可能解决方案:

let input = {
  pays: "UK",
  test: [
   [
    "123456", 
    "blabla", 
    "lorem ipsum"
   ],
   [
    "654321",
    "ipsum",
    "blabla"
   ]
  ]
};

let result = {};
result.pays = input.pays;
result.test = [];
for (let i = 0; i < input.test.length; i++){
  let testEl = input.test[i];
  let resultObj = {};
  resultObj.id = testEl[0];
  resultObj.name = testEl[1];
  resultObj.type = testEl[2];
  result.test.push(resultObj);
}

console.log(result)