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

JavaScript中如何使用变量作为键获取JSON解析后对象的对应数据

问题原因分析

  • 第一种写法的问题:JS中使用.点语法访问对象属性时,.后面的内容会被当做固定的属性名字面量处理,不会解析为变量,所以codes.e实际是在访问codes里名为e的属性,而非变量e存储的字符串对应的属性。
  • 第二种写法的问题:模板字符串不支持直接拼接对象的点语法表达式,属于非法语法,本身就会触发报错。

正确实现方式

使用方括号属性访问语法即可,方括号内部的表达式会被计算求值,最终结果会作为属性名去读取对象的对应值:

let e = "T9R3P5YE"; // 这里改成你实际要读取的、存在于codes对象中的键名,原示例中的"KA8AL9AE"不在当前codes的键列表里,会返回undefined
let codes = '{"T9R3P5YE": "10", "8HAW69VC": "20"}'
codes = JSON.parse(codes)
// 核心写法:用方括号包裹变量
console.log(codes[e]) // 输出10

注意:如果你需要访问的键KA8AL9AE确实存在,只需要把该键值对加到原JSON字符串中即可,读取逻辑还是用codes[e]。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 02:15:03