布尔函数参数和返回
Boolean function arguments and returning
所以我知道你可以在 lua 中做这样的事情来缩短你的代码,这样你就不必做不必要的 if 语句
function checkMath(equation)
if equation == 4 then
return true
end
return false
end
workspace.Part.BrickColor = BrickColor.Green() or BrickColor.Red()
但是对于函数内的 return 语句有没有办法做到这一点?
基本上,我要问的是:如果 returnItems 为真,是否可以 return 数量和项目,或者仅当 returnItems 为假时,没有 if声明?
我想做什么(还没有测试):
countDictItems = function(tab,returnItems)
local amount = 0
local items = {}
for _, ind in pairs(tab) do
amount = amount + 1
end
return amount, items or amount
end
在我发布在另一个网站上的单独主题中回答。
function blah(returnitems)
amount = 15
items = {"blah1", "blah2"}
return amount, returnitems and items or nil
end
print(blah(true))
print(blah(false))
输出:
>15 table: 0x9e26e0
>15 nil
所以我知道你可以在 lua 中做这样的事情来缩短你的代码,这样你就不必做不必要的 if 语句
function checkMath(equation)
if equation == 4 then
return true
end
return false
end
workspace.Part.BrickColor = BrickColor.Green() or BrickColor.Red()
但是对于函数内的 return 语句有没有办法做到这一点?
基本上,我要问的是:如果 returnItems 为真,是否可以 return 数量和项目,或者仅当 returnItems 为假时,没有 if声明?
我想做什么(还没有测试):
countDictItems = function(tab,returnItems)
local amount = 0
local items = {}
for _, ind in pairs(tab) do
amount = amount + 1
end
return amount, items or amount
end
在我发布在另一个网站上的单独主题中回答。
function blah(returnitems)
amount = 15
items = {"blah1", "blah2"}
return amount, returnitems and items or nil
end
print(blah(true))
print(blah(false))
输出:
>15 table: 0x9e26e0
>15 nil