Pregunta

Necesito saber cómo recuperar el conjunto de claves de una tabla en lua.por ejemplo, si tengo la siguiente tabla:

tab = {}
tab[1]='a'
tab[2]='b'
tab[5]='e'

Quiero recuperar una tabla similar a la siguiente:

keyset = {1,2,5}
¿Fue útil?

Solución

local keyset={}
local n=0

for k,v in pairs(tab) do
  n=n+1
  keyset[n]=k
end

Tenga en cuenta que no puede garantizar ningún pedido en keyset.Si desea que las claves estén ordenadas, ordene keyset con table.sort(keyset).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top