xml-js API全解析:四大核心函数(xml2js/xml2json/js2xml/json2xml)使用指南

xml-js API全解析:四大核心函数(xml2js/xml2json/js2xml/json2xml)使用指南

【免费下载链接】xml-js Converter utility between XML text and Javascript object / JSON text. 【免费下载链接】xml-js 项目地址: https://gitcode.com/gh_mirrors/xm/xml-js

xml-js 是一款功能强大的 XML 与 JavaScript/JSON 转换工具,它提供了四个核心函数:xml2js、xml2json、js2xml 和 json2xml,帮助开发者轻松实现 XML 与 JSON/JavaScript 对象之间的高效转换。无论是处理配置文件、API 响应还是数据交换,这些工具函数都能满足你的需求。

快速开始:安装与基本配置

要开始使用 xml-js,首先需要通过 npm 或 yarn 安装:

npm install xml-js
# 或
yarn add xml-js

安装完成后,你可以在项目中导入所有核心函数:

const convert = require('xml-js');

核心函数详解

xml2js:XML 转 JavaScript 对象

功能:将 XML 字符串转换为 JavaScript 对象,支持灵活的配置选项。

基础用法

const xml = '<root><name>xml-js</name></root>';
const options = { compact: true, spaces: 4 };
const jsObject = convert.xml2js(xml, options);

常用选项

  • compact: 布尔值,控制输出对象的结构(紧凑/详细)
  • spaces: 格式化输出时的缩进空格数
  • trim: 是否修剪文本节点的空白字符

xml2json:XML 直接转 JSON 字符串

功能:将 XML 字符串直接转换为 JSON 字符串,省去中间转换步骤。

基础用法

const xml = '<root><version>1.0.0</version></root>';
const jsonString = convert.xml2json(xml, { compact: true, spaces: 2 });

实用场景

  • API 响应转换
  • 配置文件转换
  • 数据持久化存储

js2xml:JavaScript 对象转 XML

功能:将 JavaScript 对象转换为 XML 字符串,支持丰富的格式化选项。

基础用法

const jsObject = { root: { name: { _text: 'xml-js' } } };
const xml = convert.js2xml(jsObject, { compact: true, spaces: 4 });

高级选项

  • doctypeFn: 自定义文档类型处理函数
  • elementNameFn: 自定义元素名称转换函数
  • attributesFn: 自定义属性处理函数

json2xml:JSON 字符串转 XML

功能:将 JSON 字符串直接转换为 XML 字符串,适合处理 JSON 数据源。

基础用法

const json = '{"root": {"version": "1.0.0"}}';
const xml = convert.json2xml(json, { compact: true, spaces: 2 });

实际应用示例

示例 1:XML 转 JSON

const xml = `
  <book>
    <title>XML与JSON转换指南</title>
    <author>xml-js团队</author>
    <price>29.99</price>
  </book>
`;

const json = convert.xml2json(xml, { compact: true, spaces: 2 });
console.log(json);

示例 2:JavaScript 对象转 XML

const book = {
  book: {
    title: { _text: 'XML与JSON转换指南' },
    author: { _text: 'xml-js团队' },
    price: { _text: 29.99 }
  }
};

const xml = convert.js2xml(book, { 
  compact: true, 
  spaces: 4,
  doctype: { pubID: '', sysID: '' }
});
console.log(xml);

高级配置选项

xml-js 提供了丰富的配置选项,可通过类型定义文件 types/index.d.ts 查看完整选项列表。主要配置类别包括:

  • XML2JS 选项:控制 XML 到 JavaScript 对象的转换行为
  • XML2JSON 选项:控制 XML 到 JSON 字符串的转换行为
  • JS2XML 选项:控制 JavaScript 对象到 XML 的转换行为

错误处理与常见问题

处理无效 XML

当处理可能包含错误的 XML 时,可以使用错误捕获机制:

try {
  const result = convert.xml2js(invalidXml);
} catch (e) {
  console.error('XML 解析错误:', e.message);
}

处理命名空间

对于包含命名空间的 XML,可以使用 namespaceKey 选项保留命名空间信息:

const options = { 
  compact: true,
  namespaceKey: '_ns'
};
const result = convert.xml2js(xmlWithNamespaces, options);

总结

xml-js 提供的四大核心函数(xml2js、xml2json、js2xml、json2xml)为 XML 与 JSON/JavaScript 对象之间的转换提供了全面解决方案。通过灵活的配置选项,你可以轻松处理各种复杂的转换需求。无论是简单的数据转换还是复杂的 XML 文档处理,xml-js 都能提供高效可靠的转换能力。

要了解更多详细信息,可以查阅项目测试文件 test/ 中的示例代码,或查看类型定义文件 types/index.d.ts 获取完整的 API 文档。

【免费下载链接】xml-js Converter utility between XML text and Javascript object / JSON text. 【免费下载链接】xml-js 项目地址: https://gitcode.com/gh_mirrors/xm/xml-js

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值