如何清除关联表

如何清除关联表中的所有元素?我知道的方法是:

for key in pairs(t) do
    t[key] = nil
end

但这只能清除普通表中的元素。

点赞
用户1514861
用户1514861
对于 `t` 表中的每个键 `key`,执行以下代码将会完全清空该表:

for key in pairs(t) do t[key] = nil end


我认为你可能会与下面的代码混淆:

for key in ipairs(t) do t[key] = nil end


这段代码将清除 `t` 表中从 1 到 n(其中 n 是第一个满足 t[n+1] == nil 的键)的所有键值对。

**示例:**

t = { [1] = 2, [2] = 3, [4] = 2, a = 1 }

```

第一种方法会完全清空该表,而第二种方法会使表中保留键 4a

2014-05-05 13:19:53