Handlebars.js如何通过变量键获取JSON数组元素?
解决变量索引数组元素的问题
根据你的JSON数据和需求,问题出在模板表达式的语法上。不同模板引擎对变量索引数组的语法支持略有差异,你可以尝试以下两种写法:
写法1:去掉索引前的点号
直接使用变量作为数组索引,不需要在[key]前加.:
{{last_request.items[key].town}}
写法2:用括号包裹变量(部分引擎适用)
如果是Handlebars这类支持子表达式的引擎,也可以用括号明确变量的引用:
{{last_request.items.[(key)].town}}
验证示例
用你的JSON数据测试:
- 当
key值为1时,上述表达式会返回Paris; - 当
key值为2时,会返回Lisbon,符合预期。
另外需要注意:确保你的模板引擎支持动态数组索引,部分轻量模板引擎可能对动态索引的支持有限,如果以上写法仍不生效,需要确认你使用的模板引擎具体语法规范。
内容的提问来源于stack exchange,提问作者Diana Sokolova
相关产品推荐
相关产品推荐

