前端之家收集整理的这篇文章主要介绍了
如何通过它的键删除lua表条目?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个lua表,我用作hashmap,即与字符串键:
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
有更好的方法吗?
不,将键的值设置为nil是
删除表的hashmap部分中的项的接受方式。你所做的是标准的。但是,我建议不要覆盖table.remove() – 对于表的数组部分,默认的table.remove()
功能包括重新编号索引,覆盖不会这样做。如果你想要
添加你的
函数到表
函数集,那么我可能会命名为类似table.removekey()或类似的东西。
原文链接:https://www.f2er.com/lua/275189.html