
註釋
單行註釋
兩個減號表示單行註釋,後面是註釋內容,用法同C語言中的 //
--我是單行註釋
print('www.daemoncoder.com') --這裡也是註釋
多行註釋
多行註釋用 --[[ --]],表示,用法同C語言中的/* */
--[[ 多行註釋 多行註釋 --]]
關鍵詞
and break do else elseif end false for function if in local nil not or repeat return then true until while
這些是Lua語言的保留字,不同把這些用作標識符。
標識符
和其他言類似,Lua的標識符也是由 字母(A-Z、a-z)或 下劃線(_) 或 數字(0-9)組成,且不能以數字開頭,且不能是上述的關鍵詞。如:
www daemoncoder com _name create_time zhang3 li4
以上這些都是合法的標識符。
Lua語言區分大小寫,daemonCoder 和 daemoncoder 是兩個不同的標識符。
一般約定,自定義的變量不要以下劃線開頭連接一串大寫字母的名字(比如 _VERSION),這種形式被保留用於 Lua 內部全局變量。
變量
Lua變量的定義類似其他動態語言,不需要為變量聲明數據類型(但是Lua是有數據類型的),下面看示例:

Lua的變量默認是全局變量,定義局部變量需要用local聲明。
上面示例定義了a到g多個變量,涉及到Lua的多種數據類型,這裡我們先不關心,後續文章會詳細介紹。但是需要注意變量b前面有local,是一個局部變量,其他均為全局變量。局部變量和全局變量的區別在於局部變量會在代碼塊結束的位置銷燬,全局變量則不會,即使在一個方法內部定義,也可以方法外的其他地方被訪問。這一點有點坑,所以在定義局部變量時一定不要忘加local,除非你明確地是要定義一個全局變量。
再看這個例子:
可以看到:
Lua可以在局部臨時覆蓋全局位置的變量。對局部變量重新賦值B,退出代碼塊之後再訪問b就恢復了原來的值。
Lua不存在的變量為nil。也可以手動給變量賦值nil來刪除變量。否則變量會由Lua自動管理生命週期。
更詳細內容,請到 https://www.daemoncoder.com/
閱讀更多 DaemonCoder 的文章