API ipairs

104,543pages on
this wiki
Add New Page
Add New Page Talk0
WoW Lua

Returns an iterator triple that allows the Lua for loop to iterate over the array portion of a table.

iteratorFunc, table, startState = ipairs(table)

Example Edit

local fruits={"apple","orange","banana","kiwi"}
for index,value in ipairs(fruits) do 
  DEFAULT_CHAT_FRAME:AddMessage(tostring(index).." : "..value)


 1 : apple
 2 : orange
 3 : banana
 4 : kiwi

would be output to the chat window.

Note that ipairs() starts at index 1 and stops counting as soon as it reaches a nil value. Example:

> t = { [0]      = "zero",   --will not be counted
        [1]      = "one",    --will be counted; 1
        [2]      = "two",    --will be counted; 2
        [3]      = "three",  --will be counted; 3
        ["four"] = "four",   --will not be counted; returns 3
        [5]      = "five" }  --will never be reached
> for i,v in ipairs(t) do print(i..":"..v) end

Note that t[0] is never reached because it starts counting at [1], t["four"] is never reached because it is not an array index, and t[5] is never reached because the iterator ceases when it checks t[4] and finds a nil value.

Also on Fandom

Random Wiki