【问题标题】:Javascript parsing json objectJavascript解析json对象
【发布时间】:2020-01-08 22:06:18
【问题描述】:

正如您所见,根据 excel 中的列,一列具有“空格”,这是在解析“分类选项”时的分类选项:如您在下面的 json 数据中所见,已混合到选项键. Categorized Options 是唯一有空格的列键。分类选项应该是一个单独的键。有没有办法我们可以改变下面的 paparse json 结果以分离 Categorized Options: key 和 value 以获得所需的结果?

期望的输出 - 我想要得到的输出

 [{ Type: 'New',   
  Stock: 'P10092',
  VIN: '1G1YY34U455128500',    
  Year: '2005',
  Options:
   ' Switch',
  Categorized Options:
  'LICENSE PLATE BRACKET',
   ImageList:
   'http: image.com',
  Comment: '2005 CHEVY CORVETT',
  FuelType: 'Gasoline Fuel',
  DriveType: 'RWD' }]

Excel 列

Type | VIN | Stock | Year | Options | Categorized Options | ImageList | Comment | FuelType | DriveType
New    | 1G..  | P10092   |  2005   |  Switch   | LICENSE PLATE BRACKET | http: image.com 2005  | comment test  | Gasoline Fuel | RWD

使用Paparse(现在的数据结果)

这是解析“分类选项”后的结果:正在加入选项,我想要的输出是我发布的上面的数据。分类选项应该是一个单独的键

[{ Type: 'New',   
  Stock: 'P10092',
  VIN: '1G1YY34U455128500',    
  Year: '2005',
  Options:
   ' Switch',
   'Categorized Options':
   'LICENSE PLATE BRACKET,',
   ImageList:
   'http: image.com',
  Comment: '2005 CHEVY CORVETT',
  FuelType: 'Gasoline Fuel',
  DriveType: 'RWD' }

【问题讨论】:

  • 你的代码在哪里?
  • 不再需要代码我已经提供了结果
  • 我认为你可以根据我发布的数据结果使用 JS 来玩它
  • 看起来你对给定it does not currently support regular-expression delimiters的解析器不走运。更改您的 CSV 以使用更标准化的格式,而不使用空格填充

标签: javascript node.js json csv papaparse


【解决方案1】:

确保将delimiter 设置为|。您还可以使用transformtransformHeader 来修剪值。

关于PapaParse docs的更多信息。

const dataText = document.getElementById('data').textContent.trim();
const parsed = Papa.parse(dataText, {
  header: true,
  delimiter: '|',
  transformHeader: header => header.trim(),
  transform: value => value.trim()
});

document.querySelector('#output').innerHTML = JSON.stringify(parsed, null, 2);
<script src="https://www.papaparse.com/resources/js/papaparse.js"></script>

<h3>Data</h3>
<pre id="data">
Type | VIN | Stock | Year | Options | Categorized Options | ImageList | Comment | FuelType | DriveType
New    | 1G..  | P10092   |  2005   |  Switch   | LICENSE PLATE BRACKET | http: image.com 2005  | comment test  | Gasoline Fuel | RWD
</pre>

<h3>Output</h3>

<pre id="output">
</pre>

【讨论】:

    猜你喜欢
    • 2013-02-28
    • 1970-01-01
    • 1970-01-01
    • 2015-04-23
    • 2014-12-02
    • 2014-12-22
    • 2016-07-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多