了解如何在 lua 中访问对象

我最接近理解这个问题的帖子是来自于这里了解如何在lua中访问数组表中的值,它提供了我看到的最有用的信息。然而,我仍然遇到了一个小问题,希望有人可以帮助我更好地理解它。

如题,我正在尝试在 lua 中访问一个对象。我已经学会了点表示法不起作用,因此替代方法是使用 [] 括号。我有一个对象,无法访问。

                    [1] =  ▼  {
                       ["CopperOre"] =  ▼  {
                          ["Counter"] = 0,
                          ["Earned"] = 0
                       }
                    }

对于那些熟悉 ROBLOX studio 控制台的人,这是一个来自于控制台粘贴的对象。通过调用对象名称“print(obj)”可以很容易地看到此对象

但是,我似乎无法访问对象内部的任何内容。 obj.CopperOre 返回 nil,与obj['CopperOre']相同

我该如何访问对象的部分内容呢?

点赞
用户2860267
用户2860267

你忘记将索引传递到 obj 数组中以访问存储在那里的对象。

因此,要正确访问 CopperOre 表,你需要像这样引用它:

print(obj[1].CopperOre)
-- 或者
print(obj[1]["CopperOre"])
2021-08-23 16:43:42