Lua - 如何在多维表中获取索引值?

是否有可能获得/返回多维数组/表中索引的多个值? 我尝试过很多方法,但都没有起作用,至少我不知道如何实现,因为我是新手。

这是我迄今为止所做或得到的结果,我的表格看起来像这样:

data = {
   ["oranges"] = {
      ["price"] = {
         "0.23",
      },
      ["location"] = {
         ["nearest"] = {
            "Russia",
            "United States",
         },
         ["farthest"] = {
            "Brazil",
            "Australia",
         },
      },
   },
   -- 更多...
}

我想要的是来自["nearest"]的所有值 我正在使用的功能一团糟,但好吧:

function getNearestLocation(data)
   for k, v in pairs(data) do
      if v == "oranges"
      then
         -- 无论我在这里做什么都无法使其工作。
         for data, subdata in pairs({v}) do
            if subdata == "location"
            then
               return subdata["nearest"]
            end
         end
      end
   end
end

因此,例如可以获得{"Russia","United States"}。提前感谢。

点赞
用户107090
用户107090

你需要的表格是 data["orange"]["location"]["nearest"]

如果你需要一个函数,使用下面这个:

function getNearestLocation(data)
   return data["orange"]["location"]["nearest"]
end
2021-03-07 21:47:53