lua - 在嵌套情况下如何最好地找到特定值的键?
问题描述
在 Lua 表中,如何才能最好地在嵌套情况下找到特定值的键(下表,源自 JSON)?
[{"Code": "AF", "Name": "Afghanistan"},
{"Code": "AL", "Name": "Albania"},
...
]
例如,我可以使用 table[2]["Name"] 来获取“Albania”,但我怎样才能获得 [2],仅通过指定“Albania”?
解决方案
循环遍历数组并测试每个值:
for i,v in ipairs(table) do
if v.Name == "Albania" then
return v.Code
end
end
您还可以将值作为键对一次放入新表中,以便直接查询:
local codeFromName={}
for i,v in ipairs(table) do
codeFromName[v.Name]=v.Code
end
推荐阅读
- php - 如何在ajax重播期间更新标头信息
- jsf - 使用 ajax 选择 h:selectOneMenu 时启动事件?
- python - 如何解决 Tkinter 中的 tag_add 问题
- filter - 未选择选项时设置切片器的默认值 Power Bi
- c# - 为什么在将画布对象设置为活动真时它没有设置活动真也孩子?
- ios - 我应该在公共类中为 Swift 中的公共框架使用前缀吗?
- javascript - 我页面底部的导航错误(Vuepress)
- reactjs - ReactSample 和 AsP.NET Core WebApi 之间的 http 连接
- forms - Symfony 3.4。覆盖类 Symfony\Component\Form
- arrays - 从python中的函数获取变量列表