如何获取名称含多空格的JSON属性?附实战数据示例
解决JSON属性名含空格/特殊字符的取值问题
别担心,用方括号加引号包裹完整属性名的方式完全可以处理含空格的属性,你可能只是在操作中出现了小失误。下面针对主流编程语言给出具体实现:
JavaScript 示例
const technicalData = [ { "Technologie": "Bluetooth Low Energy 4.0", "Größe (L x B x H)": "34.4 x 32.5 x 13 mm", "Gewicht": "018 kg", "Software": "Für die Arbeit benötigt, aber nicht im Lieferumfang enthalten. Registrierung für kostenlose Software-Verwendung und Premium-Services unter: www.bosch-trackmytools.com", "Batterie": "CR 2032", "Batterie Lebensdauer": "3 J", "IP Schutzklasse": "IP 67", "Robustheit": "IK 04", "Befestigung": "2-Komponenten-Klebstoff oder Kabelhalter GCA 30-9 Professional" } ]; // 正确获取含空格的属性值 const deviceSize = technicalData[0]["Größe (L x B x H)"]; console.log(deviceSize); // 输出:34.4 x 32.5 x 13 mm
Python 示例
technical_data = [ { "Technologie": "Bluetooth Low Energy 4.0", "Größe (L x B x H)": "34.4 x 32.5 x 13 mm", "Gewicht": "018 kg", "Software": "Für die Arbeit benötigt, aber nicht im Lieferumfang enthalten. Registrierung für kostenlose Software-Verwendung und Premium-Services unter: www.bosch-trackmytools.com", "Batterie": "CR 2032", "Batterie Lebensdauer": "3 J", "IP Schutzklasse": "IP 67", "Robustheit": "IK 04", "Befestigung": "2-Komponenten-Klebstoff oder Kabelhalter GCA 30-9 Professional" } ] # 正确取值 device_size = technical_data[0]["Größe (L x B x H)"] print(device_size) # 输出:34.4 x 32.5 x 13 mm
常见误区排查
如果还是取不到值,检查以下几点:
- 确保属性名完全匹配:包括大小写、德语特殊字符(比如
Ö)、空格和括号,不能有任何拼写错误 - 确认你操作的是数组中的正确元素(比如示例中是
technicalData[0],即第一个元素) - 如果在字符串中使用了单引号,确保属性名的引号和外层引号不冲突(比如JS中可以用
['Größe (L x B x H)'],只要引号配对正确)
其他语言的通用思路
对于其他编程语言,核心逻辑一致:
- Java(使用
JSONObject):obj.getString("Größe (L x B x H)") - C#(使用
JObject):obj["Größe (L x B x H)"].ToString()
内容的提问来源于stack exchange,提问作者milke
相关产品推荐
相关产品推荐

