Javascript 如何替换JSON中键中的空格

Javascript 如何替换JSON中键中的空格,javascript,Javascript,我有一个JSON,如下所示 var suppResJSon = [ { "Name": "_Astec_Lifesciences_Ltd", "Sector": "PHARMACEUTICALS", "Current Price": 349.05, "Pivot Point": 348.93333333333334, "Resistance 1": 352.8666666666667, "Resistance 2": 356.683333333

我有一个JSON,如下所示

var suppResJSon = [
  {
    "Name": "_Astec_Lifesciences_Ltd",
    "Sector": "PHARMACEUTICALS",
    "Current Price": 349.05,
    "Pivot Point": 348.93333333333334,
    "Resistance 1": 352.8666666666667,
    "Resistance 2": 356.68333333333334,
    "Resistance 3": 360.6166666666667,
    "Support 1": 345.1166666666667,
    "Support 2": 341.18333333333334,
    "Support 3": 337.3666666666667
  },
  {
    "Name": "_Gujarat_Gas_Co_Ltd",
    "Sector": "GAS",
    "Current Price": 177.85,
    "Pivot Point": 177.20000000000002,
    "Resistance 1": 179.25000000000003,
    "Resistance 2": 180.65,
    "Resistance 3": 182.70000000000002,
    "Support 1": 175.80000000000004,
    "Support 2": 173.75000000000003,
    "Support 3": 172.35000000000005
  }
  ]
 suppResJSon = suppResJSon.replace('Support 1', 'Support1');
   suppResJSon = suppResJSon.replace('Support 2', 'Support2');
    suppResJSon = suppResJSon.replace('Support 3', 'Support3');

console.log(suppResJSon)
例如,如何替换键中的空格

 Support 1 with Support1



 Support 2 with Support2



 Support 3 with Support3
我试过如下方法

var suppResJSon = [
  {
    "Name": "_Astec_Lifesciences_Ltd",
    "Sector": "PHARMACEUTICALS",
    "Current Price": 349.05,
    "Pivot Point": 348.93333333333334,
    "Resistance 1": 352.8666666666667,
    "Resistance 2": 356.68333333333334,
    "Resistance 3": 360.6166666666667,
    "Support 1": 345.1166666666667,
    "Support 2": 341.18333333333334,
    "Support 3": 337.3666666666667
  },
  {
    "Name": "_Gujarat_Gas_Co_Ltd",
    "Sector": "GAS",
    "Current Price": 177.85,
    "Pivot Point": 177.20000000000002,
    "Resistance 1": 179.25000000000003,
    "Resistance 2": 180.65,
    "Resistance 3": 182.70000000000002,
    "Support 1": 175.80000000000004,
    "Support 2": 173.75000000000003,
    "Support 3": 172.35000000000005
  }
  ]
 suppResJSon = suppResJSon.replace('Support 1', 'Support1');
   suppResJSon = suppResJSon.replace('Support 2', 'Support2');
    suppResJSon = suppResJSon.replace('Support 3', 'Support3');

console.log(suppResJSon)
但有以下例外

(index):125 Uncaught TypeError: suppResJSon.replace is not a function
使用和动态替换键中没有空格的空格

const data=[{Name:_Astec_Lifesciences_Ltd,行业:制药,当前价格:349.05,支点:348.93333334,阻力1:352.866666667,阻力2:356.68333333334,阻力3:360.61666666667,支持1:345.11666666666667,支持2:341.183333333334,支持3:337.366666667},{名称:古吉拉特邦天然气有限公司,部门:天然气,当前价格:177.85,支点:177.20000000002,阻力1:179.2500000000003,阻力2:180.65,阻力3:182.700000000002,支架1:175.800000000004,支架2:173.7500000000003,支架3:172.3500000000005}; const res=data.mapitem=>{ 返回对象 .中心项目 .reduceAC[键,值]=>{ 返回{[key.replace/\s/g,]:value,…acc}; }, {}; };
logres;这相当简单,只需迭代对象键,将值复制到新键,然后删除旧键

var suppResJSon=[{ 名称:_Astec_生命科学有限公司, 行业:制药, 现价:349.05, 轴心点:348.93333334, 电阻1:352.86667, 阻力2:356.68333334, 电阻3:360.61667, 支架1:345.11666667, 支持2:341.18333334, 支架3:337.36667 }, { 名称:古吉拉特邦天然气有限公司, 部门:天然气, 现价:177.85, 支点:177.200000000000002, 阻力1:179.2500000000003, 阻力2:180.65, 阻力3:182.700000000002, 支持1:175.800000000004, 支持2:173.7500000000003, 支持3:172.3500000000005 }]; console.logfixkeysuppresjson; 函数fixKeysobj{ if Array.isArrayobj{ obj.forEachitem=>fixKeyItem; }否则{ Object.keysobj.forEachkey=>{ if key.match/\s+/g{ 让newKey=key.replace/\s+/g; obj[newKey]=obj[key]; 删除obj[key]; } }; } 返回obj; }
.as console wrapper{top:0;max height:100%!important;}您可以使用映射处理此问题并减少:

var suppResJSon=[{ 名称:_Astec_生命科学有限公司, 行业:制药, 现价:349.05, 轴心点:348.93333334, 电阻1:352.86667, 阻力2:356.68333334, 电阻3:360.61667, 支架1:345.11666667, 支持2:341.18333334, 支架3:337.36667 }, { 名称:古吉拉特邦天然气有限公司, 部门:天然气, 现价:177.85, 支点:177.200000000000002, 阻力1:179.2500000000003, 阻力2:180.65, 阻力3:182.700000000002, 支持1:175.800000000004, 支持2:173.7500000000003, 支持3:172.3500000000005 } ]; const result=suppResJSon.mapv=> Object.entriesv.reduceAc,[键,值]=> Object.assignacc,{[key.replace/\s+/g,'.']:value}, {}; console.logresult;