WoW Lua

Runs the supplied function once for each table element. Is a Lua table module function. (Deprecated in Lua 5.1, use pairs or ipairs instead.)

local result = table.foreach(t, func)
local result = foreach(t, func)

Parameters[edit | edit source]

Arguments[edit | edit source]

  • t (table) - the table to iterate over
  • func (function) - the Lua function to call for each table element. Function arguments are func(index, value). IF function returns non-nil value the integration ends

Returns[edit | edit source]

  • result (any) - If function 'func' returns a non-nil value then this value is returned, else returns 'nil'.

Summary[edit | edit source]

Lua function in the in the Lua 'table' module that automatically iterates over a table, running the supplied Lua function once for each table element. Will apply the function 'func' to the elements of the table passed. On each iteration the function is passed the key-value pair of that element in the table.

Examples[edit | edit source]


> table.foreach({1,"two",3}, print) -- print the key-value pairs
1       1
2       two
3       3
> table.foreach({1,"two",3,"four"}, function(k,v) print(string.rep(v,k)) end)

If the function f returns a non-nil value the iteration loop terminates.

> table.foreach({1,"two",3}, function(k,v) print(k,v) return k<2 and nil end)
1       1
2       two

Tables can contain mixed key-value and index-value elements. table.foreach() will display all of the elements in a table. To only display the index-value elements see table.foreachi(). For more information about this subject see the TablesTutorial.

> t = { 1,2,"three"; pi=3.14159, banana="yellow" }
> table.foreach(t, print)
1       1
2       2
3       three
pi      3.14159
banana  yellow

See also[edit | edit source]

Community content is available under CC-BY-SA unless otherwise noted.