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

如何访问名称包含点的JSON字段(如proy_sim.name)?

如何访问名称包含点的JSON字段

嘿,这个问题我熟!当JSON字段名里带.这类特殊字符时,常规的点语法(比如obj.prsp_sol[0].proy_sim.name)会失效——因为程序会误以为proy_sim是一个嵌套对象,然后去寻找它的name属性,但实际上proy_sim.name是一个完整的字段名。这时候换用方括号语法就能轻松解决啦!

先回顾下你的示例JSON:

{ 
  "prsp_sol": [ 
    { 
      "proy_sim.name": "Vehículos", 
      "prsp_def.name": "TRACTOR" 
    } 
  ] 
}

下面给你几个常用编程语言的实现示例:

JavaScript 实现

const jsonData = { 
  "prsp_sol": [ 
    { 
      "proy_sim.name": "Vehículos", 
      "prsp_def.name": "TRACTOR" 
    } 
  ] 
};

// 用方括号包裹完整的带点字段名
const targetValue = jsonData.prsp_sol[0]["proy_sim.name"];
console.log(targetValue); // 输出: Vehículos

Python 实现

import json

# 解析JSON字符串为Python字典
json_str = '''{ 
  "prsp_sol": [ 
    { 
      "proy_sim.name": "Vehículos", 
      "prsp_def.name": "TRACTOR" 
    } 
  ] 
}'''
data = json.loads(json_str)

# 通过方括号访问带点的字段
target_value = data['prsp_sol'][0]['proy_sim.name']
print(target_value)  # 输出: Vehículos

通用思路总结

不管你使用哪种编程语言,核心逻辑都是一致的:不要用点符号访问包含特殊字符的字段名,改用方括号包裹完整的字段名字符串。绝大多数处理JSON的编程语言都支持这种语法,能精准定位到目标字段。

内容的提问来源于stack exchange,提问作者Lorenzo Martín

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.13 07:23:22