Lua基礎學習 Lua函式

2021-08-15 14:45:24 字數 1250 閱讀 8601

函式主要用途

1、是作為呼叫語句使用。

2、作為賦值語句的表示式使用。

語法:

[區域性/全域性]

function

fun_name

([引數列表])

函式體endfunction :定義函式關鍵字

注意:

1、在使用 lua 函式/變數時一定要先定義函式/變數

2、lua 函式不支援引數預設值, 可以使用 or 解決。如:

function

name

(str1,str2,str3)

str1 = str1 or

"古夢"

str2 = str2 or

"古夢"

str3 = str3 or

"古夢"

end

什麼叫多返回值,就是返回多個數值。

function

fun_test()

return

1,2,3

enda,b,c,d = fun_test()

print(a,b,c,d)

--結果: 1 2 3 nil

functionf()

return

1,2,3

endx,y,b,c = f() ----輸出結果 x = 1, y = 2, b = 3,c = nil

t1 =

print(t1[1],t1[2],t1[3])--輸出結果 1, 1, nil --f()返回的第乙個值

t2 =

print(t1[1],t1[2],t1[3],t1[4])--輸出結果1, 1, 2, 3 -- f()返回所有的值

函式引數列表中使用三點 (…) 表示該函式有可變引數。

lua 將函式的引數放在乙個叫 arg 的表中。

local function test(...)

arg =

local count = 0

for k,v in pairs(arg) do

count = count + 1

endreturn count

endprint(test(1,2,3,4,5))

--輸出結果: 5

Lua基礎函式

1,table.concat table,sep,start,end 連線函式 concat是concatenate 連鎖,連線 的縮寫.table.concat 函式列出引數中指定table的陣列部分從start位置到end位置的所有元素,元素間以指定的分隔符 sep 隔開。除了table外,其他...

lua學習 lua函式理解

詞法定界指 巢狀的函式可以訪問他外部函式中的變數。第一類值指 可以被存放在變數中,也可以存放在表中,可以作為函式的引數,還可以作為函式的返回值。的值function foo x return 2 x end這段 實際上就等效於 foo function x return 2 x end所以實際上lu...

lua基礎學習 閉合函式(closure)

先看 newcounter function add local i 0 counter function i i add return i endreturn counter endc1 newcounter 1 print c1 print c1 do local oldcounter newc...