https://github.com/pengng/xml-js-parse
Parse the xml as a js object or build an xml through a js object.
https://github.com/pengng/xml-js-parse
convert object parse parser xml
Last synced: 5 months ago
JSON representation
Parse the xml as a js object or build an xml through a js object.
- Host: GitHub
- URL: https://github.com/pengng/xml-js-parse
- Owner: pengng
- Created: 2017-11-29T02:52:39.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2017-11-29T02:56:12.000Z (over 8 years ago)
- Last Synced: 2025-10-10T22:53:29.981Z (9 months ago)
- Topics: convert, object, parse, parser, xml
- Language: JavaScript
- Size: 8.79 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# xml-js-parse
Parse the xml as a js object or build an xml through a js object.
### Usage
```bash
npm i xml-js-parse -S
```
```javascript
const xmlParser = new require('xml-js-parse').Parser()
const xml = `
xiaobai
`
const obj = xmlParser.parseString(xml)
```
### new Parser([options])
- `options` \ 配置对象
- `trim` \ 去除文本节点头尾的空格。默认为 `false` 。
- `normalize` \ 去除文本节点内的空格。默认为 `false` 。
- `normalizeTags` \ 将所有标签名转成小写字母。默认为 `false` 。
- `ignoreAttrs` \ 忽略属性节点。默认为 `false` 。
- `attrkey` \ 设置属性节点的字段名。默认为 `$` 。
- `charkey` \ 设置文本节点的字段名。默认为 `_` 。
- `explicitArray` \ 保存子元素为数组。默认为 `true` 。当设置为 `false` ,只有出现多个相同标签名的子元素时才合并成数组。
### parseString
解析 `xml` 数据为对象。
- `xml` \
```javascript
const xmlParser = new Parser({ explicitArray: false })
const xml = `
xiaobai
12
xiaohong
11
2
`
const result = xmlParser.parseString(xml)
/**
{
user: [
{
name: 'xiaobai',
age: '12'
},
{
name: 'xiaohong',
age: '11'
}
],
count: '2'
}
*/
```
### new Builder([options])
- `options` \ 配置对象
- `rootName` \ 根节点名称。默认为 `root` 。
- `renderOpts` \
- `pretty` \ 使用格式。默认为 `true` 。
- `indent` \ 缩进。默认为 `' '` 。
- `newline` \ 换行。默认 `\n` 。
- `xmldec` \
- `version` \ 头信息,版本号。默认 `1.0` 。
- `encoding` \ 头信息,编码格式。默认 `UTF-8` 。
- `standalone` \ 头信息,独立。默认 `true` 。
- `headless` \ 去除头信息。默认 `false` 。
- `cdata` \ 当文本节点包含非法 `xml` 字符时,用`` 包含。默认 `false` 。
### buildObject
- obj \ 要构建 `xml` 的对象。
```javascript
const xmlBuilder = new Builder()
const obj = { name: 'xiaobai' }
const xml = xmlBuilder.buildObject(obj)
/**
xiaobai
*/
```