Lua表:向表中的键分配值

4

在赋值时,有什么不同之处:

Lesson["Maths"] = {grade = 10, class = 3}

并且

Lesson["Maths"] = {["grade"] = 10, ["class"] = 3}

如果我想给一个表中的键赋值,应该使用哪个方法?或者哪种方法更常用?非常感谢。

1个回答

5

在您的情况下,这两个是相同的。当您想要包含特殊字符的键时,第一个用法会失败:

tEx = {
  failed-approach = true,
}

上述代码片段会导致错误,您将被迫遵循第二种创建密钥的方法:
tEx = {
  ['failed-approach'] = false,
}

这两种方法是相同的,你可以随意选择使用哪一种。


请注意,括号内可以使用任何表达式,不仅限于字符串。您可以进行变量引用、数学运算、函数调用等操作。 - Colonel Thirty Two
另外,请注意,无括号语法适用于作为有效Lua标识符的字符串键。 - Tom Blodget

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接