Аргументы логической функции и возвращение

Так что я знаю, что вы можете делать такие вещи в lua, чтобы немного сократить ваш код, чтобы вам не приходилось делать ненужные операторы if

function checkMath(equation)
        if equation == 4 then
                return true
        end
        return false
end

workspace.Part.BrickColor = BrickColor.Green() or BrickColor.Red()

но есть ли способ сделать это для оператора возврата внутри функции?

В основном, я спрашиваю: возможно ли вернуть сумму и элементы, если returnItems равен true, или только сумму, если returnItems равен false, без оператора 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

1 ответ

Решение

Ответ в отдельной теме я разместил на другом сайте.

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
Другие вопросы по тегам