Ich habe eine Lua-Tabelle, die ich als Hashmap verwende, dh mit String-Schlüsseln:
local map = { foo = 1, bar = 2 }
Ich möchte ein Element dieser Tabelle "platzen" lassen, das durch seinen Schlüssel identifiziert wird. Es gibt eine table.remove()
Methode, die jedoch nur den Index des zu entfernenden Elements (dh eine Zahl) und keinen generischen Schlüssel benötigt. Ich würde gerne dazu in der Lage sein table.remove(map, 'foo')
und hier ist, wie ich es implementiert habe:
function table.removekey(table, key)
local element = table[key]
table[key] = nil
return element
end
Gibt es einen besseren Weg, das zu tun?