Difference between revisions of "Next"

From GiderosMobile
m (Text replacement - "<source" to "<syntaxhighlight")
m (Text replacement - "</source>" to "</syntaxhighlight>")
 
Line 7: Line 7:
 
<syntaxhighlight lang="lua">
 
<syntaxhighlight lang="lua">
 
next(table,index)
 
next(table,index)
</source>
+
</syntaxhighlight>
  
 
Its first argument is a table and its second argument is an index in this table. ''next'' returns the next index of the table and its associated value.
 
Its first argument is a table and its second argument is an index in this table. ''next'' returns the next index of the table and its associated value.

Latest revision as of 14:30, 13 July 2023

Available since: Gideros 2011.6
Class: (global)

Description

Allows a program to traverse all fields of a table.

next(table,index)

Its first argument is a table and its second argument is an index in this table. next returns the next index of the table and its associated value.

  • when called with nil as its second argument, next returns an initial index and its associated value
  • when called with the last index, or with nil in an empty table, next returns nil
  • if the second argument is absent, then it is interpreted as nil. In particular, you can use next(t) to check whether a table is empty.
The order in which the indices are enumerated is not specified, even for numeric indices. To traverse a table in numeric order, use a numerical for or the ipairs function.
The behavior of next is undefined if, during the traversal, you assign any value to a non-existent field in the table. You may however modify existing fields, in particular, you may clear existing fields.

Parameters

table: (table) table to traverse
index: (number) previous table index optional