WoW:API foreach: Difference between revisions

From AddOn Studio
Jump to navigation Jump to search
(Use Lua/Libshortcut template. Change category from "LUA Functions" to "Lua functions".)
({{luaapi}})
Line 1: Line 1:
{{:Lua/Libshortcut|foreach|table.foreach}}
{{luaapi}}
Apply the function f to the elements of the table passed. On each iteration the function f is passed the key-value pair of that element in the table.
table.foreach(tab, func);
foreach(tab, func);


From [http://lua-users.org/wiki/TableLibraryTutorial TableLibraryTutorial] of lua-users.org.
From [http://lua-users.org/wiki/TableLibraryTutorial TableLibraryTutorial] of lua-users.org.
table.foreach(table, f)
Apply the function f to the elements of the table passed. On each iteration the function f is passed the key-value pair of that element in the table.


  > table.foreach({1,"two",3}, print) -- print the key-value pairs
  > table.foreach({1,"two",3}, print) -- print the key-value pairs
Line 32: Line 31:
  pi      3.14159
  pi      3.14159
  banana  yellow
  banana  yellow
{{LUA}}

Revision as of 22:30, 25 March 2010

WoW Lua

Apply the function f to the elements of the table passed. On each iteration the function f is passed the key-value pair of that element in the table.

table.foreach(tab, func);
foreach(tab, func);

From TableLibraryTutorial of lua-users.org.

> 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)
1
twotwo
333
fourfourfourfour

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