ローカル変数
CoddyのLuaジャーニー「Fundamentals」セクションの一部 — レッスン 84/90。
Luaは、スコープが制限された変数を作成するためにlocalキーワードを提供しています。localを使用して変数を宣言すると、その変数が作成された特定のブロック内でのみアクセス可能になります。
ローカル変数の作成方法は次のとおりです:
local playerHealth = 100
local isGameActive = true主な違いは、ローカル変数がそのブロック内に限定されることです。例えば、do...end ブロック内でローカル変数を作成した場合、そのブロックの外からはアクセスできません:
do
local secretCode = 1234
print(secretCode) -- これは動作します
end
print(secretCode) -- これはエラーになりますチャレンジ
簡単do...end ブロックを作成し、その中で secretMessage という名前のローカル変数を値 "Hidden data" で宣言してください。同じブロック内で、secretMessage の値を出力してください。
do...end ブロックが終了した後、再び secretMessage を出力しようとしてみてください。ローカル変数はそのブロックのスコープ内に限定されるため、この2番目の出力ステートメントは nil を出力します。これは、変数がブロックの外からはアクセスできなくなるためです。
チートシート
local キーワードを使用して、スコープが制限された変数を作成します:
local playerHealth = 100
local isGameActive = trueローカル変数はそのブロック内に限定され、外部からアクセスすることはできません:
do
local secretCode = 1234
print(secretCode) -- これは動作します
end
print(secretCode) -- これはエラーを引き起こします自分で試してみよう
-- TODO: ここにコードを書いてください
-- ローカル変数 secretMessage を持つ do...end ブロックを作成します
-- ブロック内で secretMessage を出力します
-- その後、ブロックの外で secretMessage を出力してみますこのレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。