本帖最后由 吾奶常煽赵子龙 于 2024-4-29 06:06 PM 编辑
一个简单的return还引得大家吵得不可开交,和谐和谐。
其实很简单的,return有两个功能:
第一个,结束所在函数的运行,直接退出该函数:
[Lua] 纯文本查看 复制代码
local function test()
print("2")
print("3")
end
local function main()
print("1")
test()
print("4")
end
main()
上面没有加return,将打印:
1
2
3
4
如果在test函数中加一个return,如:
[Lua] 纯文本查看 复制代码
local function test()
print("2")
-- test函数执行到这里就直接退出该函数了,该函数的后续代码将不会被执行
-- 这里是直接return,正常情况下一般是满足某个条件再return
return
print("3")
end
local function main()
print("1")
test()
print("4")
end
main()
上面代码将打印:
1
2
4
return只会影响它所在的函数,不会影响其他函数。
第二个,设置函数返回值。
lua函数都是有返回值的,如果没有return,函数执行结束后会返回一个nil,如果想要返回我们自己想要的数据,就需要用到return,比如返回一个字符串:
[Lua] 纯文本查看 复制代码
local function test()
print("2")
print("3")
-- 这里返回了一个字符串
return "asdasdasd"
end
至于加不加return,什么时候加return,就要看函数的具体逻辑了。 |