Menu
CoddyTech

ローカル変数

CoddyのLuaジャーニー「基礎」セクションの一部。レッスン 84/90。

Lua では、スコープが限定された変数を作成するために local キーワードが用意されています。local を使って変数を宣言すると、その変数は作成された特定のブロック内でのみアクセスできます。

ローカル変数の作成方法は次のとおりです:

local playerHealth = 100
local isGameActive = true

主な違いは、ローカル変数はそのブロック内に限定されることです。たとえば、do...endブロック内でローカル変数を作成すると、そのブロックの外からアクセスできません。

do
    local secretCode = 1234
    print(secretCode)  -- これは動作します
end
print(secretCode)  -- nilを出力します: ローカル変数はここではもう存在しません

ブロックの外では、その名前は一度も設定されていないグローバル変数を指すため、Luaはエラーの代わりにnilを返します。

challenge icon

チャレンジ

簡単

do...end ブロックを作成し、その中で値が "Hidden data" のローカル変数 secretMessage を宣言します。同じブロック内で、secretMessage の値を出力します。

do...end ブロックが終了した後、もう一度 secretMessage を出力してみます。ローカル変数はブロックスコープ内に限られるため、この2つ目の出力文は nil を出力します。変数はブロックの外ではアクセスできなくなっているためです。

自分で試してみよう

-- TODO: ここにコードを書いてください
-- ローカル変数 secretMessage を持つ do...end ブロックを作成してください
-- ブロック内で secretMessage を出力してください
-- 次に、ブロックの外で secretMessage を出力してみてください
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン

自分で練習してみよう: Luaオンラインコンパイラ