Get n-th element from end of list (table)

11.5k views Asked by At

If I have a list (table):

local list = {'foo', 'bar', 'baz', 'qux'}

How do I get the n-th item from the end? (e.g., the last or second to last)

2

There are 2 answers

0
lhf On BEST ANSWER

Try list[#list+1-n] to get the n-th entry from the end, counting from 1 as usual in Lua. So the last item has n=1.

0
das On

This should work

function getEntryFromEnd(table, entry)
    local count = (table and #table or false)
    if (count) then
        return table[count-entry];
    end
    return false;
end