You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从xml2json转换后的JSON中获取#document字段?

解决xml2json转换后无法获取#document的问题

嘿,这个问题我之前也碰到过!原因其实很简单——你用的点语法没法直接访问带特殊字符(比如#)的属性名,这才导致json.#document返回undefined。下面给你几个可行的解决办法:

  • 改用方括号语法访问属性
    JavaScript中,当对象属性名包含#、空格、连字符这类特殊字符时,点号.语法就失效了,必须换成方括号[]来访问。把你的代码改成这样:

    console.log(json['#document']);
    

    这样应该就能成功获取到#document对应的内容了。

  • 先确认属性是否存在
    如果你执行上面的代码还是没结果,先检查转换后的JSON对象里到底有没有#document这个属性。可以用Object.keys()来查看所有属性名:

    console.log(Object.keys(json));
    

    如果输出里没有#document,那说明xml2json在转换时默认忽略了文档节点,这时候需要调整插件的转换配置。

  • 调整xml2json的转换配置
    不同版本的xml2json插件可能有不同的配置项,用来控制是否保留文档节点。比如某些jQuery版本的xml2json支持类似preserveDocumentNode的配置,你可以试试在转换时传入配置参数:

    var json = $.xml2json(xml, {
      preserveDocumentNode: true
    });
    

    具体的配置项名称可以参考你使用的插件文档,找到开启保留文档节点的开关即可。

内容的提问来源于stack exchange,提问作者lin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 07:52:50