首页 > 解决方案 > 如何使用 JavaScript 格式化数组对象键

问题描述

我有一个变量中的数组

var flaredata = [
   {
      "name":"flare.international.Arctic Council",
      "size":3812,
      "imports":
         "flare.interest.Climate & Environment, flare.interest.Economy,flare.interest.Security, Safety & Defence,flare.interest.Health & Social,flare.interest.Inuit Interests"
      
   }
];

但我想要一个这种格式的数组,其中对象键也在双引号

var flaredata = [
   {
      "name":"flare.international.Arctic Council",
      "size":3812,
      "imports":[
         "flare.interest.Climate & Environment",
         "flare.interest.Economy",
         "flare.interest.Security, Safety & Defence",
         "flare.interest.Health & Social",
         "flare.interest.Inuit Interests"
      ]
   }
];

标签: php

解决方案


您可以通过 转换imports孩子.split(",").map(x => x.trim());。并使用Array.map来处理flaredata.

更新:修正flare.interest.Security, Safety & Defence了逗号分隔。

var flaredata = [{
  "name": "flare.international.Arctic Council",
  "size": 3812,
  "imports": [
    "flare.interest.Climate & Environment, flare.interest.Economy,flare.interest.Security, Safety & Defence,flare.interest.Health & Social,flare.interest.Inuit Interests"
  ]
}];

var result = flaredata.map(item => {
   item.imports = item.imports[0]
   .split("flare.interest.")
   .filter(x => x.length > 0)
   .map(x => (('flare.interest.' + x).trim().replace(/,\s*$/, "")));
   
   return item;
})

console.log(result);


推荐阅读