LUA表格插入的不同方法

好的,所以我遇到了一个在LUA中似乎无法解决的困境。

基本上,我尝试像这样插入值到表格中:

 activeContracts = {
        [user_id] = {
            [1] = {
                source = src
            }
        }
    }

但不是以那种方式,而是以这种方式:

    activeContracts = {}
    activeContracts[user_id][1]["source"] = src

但是最后一个示例不起作用。我在谷歌上搜索过,并没有找到任何显示我的困境的文档。

如果有任何有经验的LUA用户可以针对此问题发表评论,这将非常有帮助。

谢谢!

原文链接 https://stackoverflow.com/questions/69851759

点赞
stackoverflow用户2858170
stackoverflow用户2858170

activeContracts = {} 创建了一个空的全局表。

activeContracts[user_id][1]["source"] = src 试图将src赋值给activeContracts[user_id][1]["source"],但你不能索引activeContracts[user_id][1],因为它不存在。你也不能为同样的原因索引activeContracts[user_id]

因此,你试图为不存在的嵌套表分配值。你必须先创建该嵌套结构。你基本上是在尝试进入一个你从未建造的房子的第三层。

activeContracts = {[user_id] = {{}}}
2021-11-05 10:34:52