luaの覚書です。
luaの使い方
luaはイテレータに対応
イテレータ(iterator)とは、プログラミングにおいて、コレクションなどの集合体の要素を1つずつ取り出すためのメカニズムのことを指します。
具体的には以下のような特徴があります。
- コレクション内の現在位置を覚えているポインタ的な機能を持つ
- next()メソッドなどで1要素ずつ進めていくことができる
- ループ処理で要素を順に取り出せる
Luaではfor文のカウンタ変数としてこのイテレータを利用できます。
for value in ipairs(table) do
print(value)
end
ipairsとpairs の違い
- ipairs : テーブルのキーが数字(整数インデックス)の場合に使用
- pairs : テーブルのキーが文字列の場合に使用
for文の_,
for文に_, にするか否かは、インディックス番号が必要か否かです。
インデックス番号が必要な場合は、 i や num などの変数を定義します。
for i = 1, #table do
print(i)
end
インデックス番号が不要な場合 、 _ を使います。
for _, value in ipairs(table) do
print(value)
end
スポンサーリンク
LuaでClassを追加する関数
function Div(el)
-- 最初のクラス名が 'iconnote' または 'iconalert' であるか確認
if el.classes[1] == 'iconnote' or el.classes[1] == 'iconalert' then
-- 'iconbox' クラスを追加
table.insert(el.classes, 1, 'iconbox')
return el
end
end
コメント