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

如何从serde_json::Value直接访问JSON数组并获取字段?

直接链式访问serde_json数组中的字段

你的JSON是数组结构,要直接访问里面对象的字段且不用额外变量,直接用数组索引 + 字段名链式访问即可——serde_json::Value的数组类型支持通过数字索引取值,取到的对象又支持通过字段名索引。

比如你要打印第一个元素的name字段,直接写:

println!("{:?}", json[0]["name"]);

给你一个完整的示例代码:

use serde_json::json;

fn main() {
    // 构造目标JSON数组
    let json = json!([
        {
            "name": "jsonvalue"
        }
    ]);
    
    // 直接链式访问并打印字段
    println!("{:?}", json[0]["name"]);
}

如果数组里有多个元素,替换索引数字就能访问对应元素的字段,比如json[1]["name"]对应第二个元素。

注意:这种索引写法如果遇到数组越界或字段不存在会直接panic;要是需要安全访问,可以用get方法链式调用(如json.get(0)?.get("name")),但需要处理Option和Result类型,你要的直接访问场景用索引写法就足够。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 08:50:42