gpt4 book ai didi

javascript - 在 JavaScript 中序列化 XML

转载 作者:行者123 更新时间:2023-12-03 02:41:09 25 4
gpt4 key购买 nike

我在 Express 服务器中使用 XML,并使用 express-xml-bodyparser 对其进行解析,但生成的对象基本上无法使用。

XML

<SubClass code="A07.0"/>
<SubClass code="A07.1"/>
<SubClass code="A07.2"/>
<SubClass code="A07.3"/>
<SubClass code="A07.8"/>
<SubClass code="A07.9"/>

被序列化为 JSON

subclass:
[ { '$': { code: 'A07.0' } },
{ '$': { code: 'A07.1' } },
{ '$': { code: 'A07.2' } },
{ '$': { code: 'A07.3' } },
{ '$': { code: 'A07.8' } },
{ '$': { code: 'A07.9' } } ]

有没有办法直接将其粘贴到

subclass: ['A07.0','A07.1','A07.2','A07.3','A07.8','A07.9']

或者一些简单的方法如何将它转换成这个数组?

最佳答案

您可以设置mergeAttrs选项为 true 以删除 $ 属性:

 xmlparser({ mergeAttrs: true, explicitArray: false})

输出:

SubClass: [
{ code: "A07.0" },
{ code: "A07.1" },
{ code: "A07.2" },
{ code: "A07.3" },
{ code: "A07.8" },
{ code: "A07.9" }
]

或者您可以只使用array.map()方法:

var data = { subclass:
[ { '$': { code: 'A07.0' } },
{ '$': { code: 'A07.1' } },
{ '$': { code: 'A07.2' } },
{ '$': { code: 'A07.3' } },
{ '$': { code: 'A07.8' } },
{ '$': { code: 'A07.9' } } ] };


var result = data.subclass.map( (obj) => {
return obj.$.code;
});

console.log(result);

关于javascript - 在 JavaScript 中序列化 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48321540/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com