我有一个lua表,用作哈希图,即带有字符串键:
local map = { foo = 1, bar = 2 }
我想“弹出”该表的键所标识的元素。有一种table.remove()
方法,但是只需要删除元素的索引(即数字),而不需要通用键。我希望能够做到table.remove(map, 'foo')
,这就是我的实现方式:
function table.removekey(table, key)
local element = table[key]
table[key] = nil
return element
end
有更好的方法吗?
4
+1非常有用的问题,因为您给出了我需要的“答案”;即使没有“更好”的方式。
—
伊恩·博伊德