Lua中table.insert方法无效时,如何正确插入元素到表中?

2026-04-01 19:070阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计234个文字,预计阅读时间需要1分钟。

Lua中table.insert方法无效时,如何正确插入元素到表中?

为什么不是t:insert(9):在Lua中,t:insert(9)不工作。我通常想用a.f(a,x)等价于a:f(x),但a:f(x)只是a的字符串表示。

为什么不是t:insert(9)在 Lua工作?
(我想在表的末尾附加值9)

t = {1,2,3} table.insert(t, 9) -- works (appends 9 to end of table t) t:insert(9) -- does NOT work

我一般都想

a.f(a,x)等于a:Lua中的f(x)

虽然a:f(x)只是a.f(a,x)的语法糖,但第二种语法并不是你所拥有的.通过倒退来思考:

你试过的函数调用是t:insert(9)

所以你说的语法规则是t.insert(t,9)

Lua中table.insert方法无效时,如何正确插入元素到表中?

但是工作函数调用是table.insert(t,9)

看看最后两个是不一样的?所以你的问题的答案是insert()不是t中包含的函数,它在“table”中.

本文共计234个文字,预计阅读时间需要1分钟。

Lua中table.insert方法无效时,如何正确插入元素到表中?

为什么不是t:insert(9):在Lua中,t:insert(9)不工作。我通常想用a.f(a,x)等价于a:f(x),但a:f(x)只是a的字符串表示。

为什么不是t:insert(9)在 Lua工作?
(我想在表的末尾附加值9)

t = {1,2,3} table.insert(t, 9) -- works (appends 9 to end of table t) t:insert(9) -- does NOT work

我一般都想

a.f(a,x)等于a:Lua中的f(x)

虽然a:f(x)只是a.f(a,x)的语法糖,但第二种语法并不是你所拥有的.通过倒退来思考:

你试过的函数调用是t:insert(9)

所以你说的语法规则是t.insert(t,9)

Lua中table.insert方法无效时,如何正确插入元素到表中?

但是工作函数调用是table.insert(t,9)

看看最后两个是不一样的?所以你的问题的答案是insert()不是t中包含的函数,它在“table”中.