User:Anaminus/return nutshell
From Legacy Roblox Wiki
Jump to navigationJump to search
"return" in a nutshell....
The return statement is used to return values from a function.
Example:
function number() return 7 end print(number())
'7' will print in the output.
More Examples:
Variables can be used to return values,
function string() local s = "Message" return s end print(string())
'Message' will print in the output.
When assigning a function to a variable, the variable becomes what the function returns.
function number() return 11 end n = number() print(n)
'11' will print in the output.
'return' acts as output.
function add(value) v = value + 10 return v end n = add(5) print(n)
'15' will print in the output.
Another output example:
function add(value) return value + 10 end n = add(6) print(n)
'16' will print in the output.
'return'ing nothing returns nil
function nothing() return end n = nothing() print(n)
'nil' will print in the output.
'return'ing nothing is often used to escape a function
When not escaping:
function DontEscape(value) if value == 0 then print("it was 0") end print("the end") end
DontEscape(1)
'the end' will print in the output.
DontEscape(0)
'it was 0' will print in the output.
'the end' will print in the output.
When escaping:
function Escape(value) if value == 0 then print("it was 0") return end print("the end") end
Escape(1)
'the end' will print in the output.
Escape(0)
'it was 0' will print in the output.
'return' can be used to return multiple values.
function NotMultiple() return 10 return 20 end print(NotMultiple())
'10' will print in the output.
function Multiple() return 10,20 end print(Multiple())
'10 20' will print in the output.
Multiple variables can be set with multiple returns.
Normal:
a,b,c = 5,6,7 print(a) print(b) print(c)
'5' will print in the output.
'6' will print in the output.
'7' will print in the output.
Multiple:
function multiple() return 15,16,17 end a,b,c = multiple() print(a) print(b) print(c)
'15' will print in the output.
'16' will print in the output.
'17' will print in the output.