Lua是動態類型語言,所以變量沒有類型,僅值有類型。值可以被存儲在變量中,作為參數傳遞,并作為結果返回。
在Lua中雖然我們沒有變量的數據類型,但我們有類型的值。用于數值數據類型的列表在下面給出。
函數類型
在Lua中有一個叫做函數類型,使我們能夠知道變量的類型。如下一些例子給出了下面的代碼。
t=10
print(type(5.8*t)) --> number
print(type(true)) --> boolean
print(type(print)) --> function
print(type(type)) --> function
print(type(nil)) --> nil
print(type(type(ABC))) --> string
當建立并執行上面的程序,它在Linux下面會產生結果:
number
function
function
boolean
nil
string
默認情況下,所有的變量將指向nil ,直到他們被分配一個值或初始化。在Lua中,0和空字符串被認為是true,條件檢查也是如此。因此,必須使用布爾操作時要小心。我們在下面的章節了解更多并使用這些類型。