lua脚本学习5

来源:互联网 发布:水果软件 编辑:程序博客网 时间:2024/06/05 20:20

function(函数)

在 Lua 中,函数是被看作是"第一类值(First-Class Value)",函数可以存在变量里:


-- 在 Lua 中,函数是被看作是"第一类值(First-Class Value)",函数可以存在变量里:
function factorial1(n)
if n == 1 then 
return 1
else
return n*(factorial1(n-1))
end
end
print(factorial1(5))
factorial2 = factorial1
print(factorial2(5))


function testAnony(tab,fun)
for k,v in pairs(tab) do
print(fun(k,v));
end
end


table = {key1 = "val1",key2 = "val2",5,16};
testAnony(table,
function(k,v)  --匿名函数
return k .. "-" .. v;
end
);


testAnony(table,
function(k,v)  --匿名函数
if type(v) == "number" then  --判断值是否数字,转变key 为20 - value的余数 ,value为20
k = 20 - v;        
v = 20;
end
return k .. "--" .. v;
end
);








原创粉丝点击