如何在Lua中擦除或重置表

Jos*_*osh 3 lua reset lua-table

我将如何在Lua中完全擦除或重置表格.我想最后把它变成一张空白表.

Spl*_*iFF 7

你迭代键并使它们为零.

for k,v in pairs(t) do
  t[k] = nil
end
Run Code Online (Sandbox Code Playgroud)

如果它是一个数组,则使用table.remove()删除值

  • 请注意,虽然这适用于大多数表格,但是可以使用元表来制作一个不会以这种方式清洁的表格. (3认同)
  • 如果使用删除,请从数组的末尾开始删除,否则会花费很长时间,因为创建的洞之后的所有元素都需要移动。使用“pair”的方法要快得多。 (2认同)