功能差异
Difference in functions
我很好奇这两种不同类型的函数之间是否存在差异。
function PrintHello()
return print("Hello")
end
和
PrintHello = function()
return print("Hello")
除此之外,您在第二个函数中缺少结尾,这两个代码段是等效的。
根据 Lua 5.4 Reference Manual 3.4.11 - Function Definitions
function PrintHello ()
print("Hello")
end
转换为
PrintHello = function ()
print("Hello")
end
正如您在手册中所看到的,本地函数也有所不同。
local function a() end
转换为
local function a;
a = function () end
这允许 a 在递归调用中引用自身。
而不是 return print("Hello")
只需写 print("Hello")
。 print
没有 return 值。
函数PrintHello()
打印(“你好”)
结束
我很好奇这两种不同类型的函数之间是否存在差异。
function PrintHello()
return print("Hello")
end
和
PrintHello = function()
return print("Hello")
除此之外,您在第二个函数中缺少结尾,这两个代码段是等效的。
根据 Lua 5.4 Reference Manual 3.4.11 - Function Definitions
function PrintHello ()
print("Hello")
end
转换为
PrintHello = function ()
print("Hello")
end
正如您在手册中所看到的,本地函数也有所不同。
local function a() end
转换为
local function a;
a = function () end
这允许 a 在递归调用中引用自身。
而不是 return print("Hello")
只需写 print("Hello")
。 print
没有 return 值。
函数PrintHello() 打印(“你好”) 结束