Tengo una tabla lua que uso como hashmap, es decir, con claves de cadena:
local map = { foo = 1, bar = 2 }
Me gustaría "hacer estallar" un elemento de esta tabla identificado por su clave. Hay un table.remove()
método, pero solo se necesita el índice del elemento a eliminar (es decir, un número) y no una clave genérica. Me gustaría poder hacerlo table.remove(map, 'foo')
y así es como lo implementé:
function table.removekey(table, key)
local element = table[key]
table[key] = nil
return element
end
¿Existe una mejor manera de hacerlo?