next
テーブルの次のキーと値を返し、テーブルをトラバース可能にする
lua
next (table [, index])
説明
テーブル内の全てのフィールドを順にトラバースするために使用されます。第一引数はテーブル table
、第二引数はそのテーブル内のキー index
です。next
は次のキーとその値を返します。
index
にnil
を指定すると、最初のキーとその値を返します。- 最後のキーで呼び出した場合、または空のテーブルで
nil
を指定した場合、next
はnil
を返します。
第二引数を省略した場合、nil
と見なされます。next(t)
を使用することで、テーブル t
が空かどうかを確認できます。
キーが列挙される順序は未定義であり、数値キーでも順序は保証されません。(数値順にテーブルをトラバースするには、数値 for
ループや ipairs
を使用してください。)
トラバース中にテーブルに存在しない新しいキーに値を割り当てると、next
の動作は未定義になります。ただし、既存のキーの値を変更することは可能です。特に、既存のキーの値を nil
に設定して削除することができます。
サンプルコード
lua
local t = {a = 1, b = 2}
print(next(t))
この例では、テーブルt
の最初のキーと値が表示されます。
互換性
- Lua5.1