Engine-global
Luau globals
*Deze inhoud is vertaald met behulp van AI (bèta) en kan fouten bevatten. Klik hier om deze pagina in het Engels te bekijken.
Samenvatting
Functies
collectgarbage(operation: string):Variant |
getmetatable(t: Variant):Variant |
loadstring(contents: string,chunkname: string):Variant |
require(module: ModuleScript | string | number):Variant |
setmetatable(t: table,newMeta: Variant):table |
API-referentie
Functies
assert
Parameters
value:Variant |
| Standaardwaarde: assertion failed! |
Teruggaves
Variant
Codevoorbeelden
Bevestigen
local product = 90 * 4
assert(product == 360, "Oh dear, vermenigvuldiging is kapot")
-- De regel hierboven doet niets, omdat 90 keer 4 360 iscollectgarbage
error
getfenv
getmetatable
getmetatable(t:Variant):Variant
Parameters
t:Variant |
Teruggaves
Variant
Codevoorbeelden
KrijgMetatable
local meta = {}
local t = setmetatable({}, meta)
print(getmetatable(t) == meta) --> true
-- Maak de originele metatable onherstelbaar door de __metatable metamethode in te stellen:
meta.__metatable = "beschermd"
print(getmetatable(t)) --> beschermdipairs
loadstring
newproxy
next
pairs
pcall
Teruggaves
Codevoorbeelden
Pcall
local function divideByFive(n: number): number
return n / 5
end
local success, errorMessage = pcall(divideByFive, "geenGetal") -- Resultaat is een fout...
if success then
-- Verwerk succesvolle reactie...
else
print("Foutmelding:", errorMessage)
endrawset
require
Parameters
Teruggaves
Variant
Codevoorbeelden
Vereiste Module Resolutie
-- "./" prefix is gelijk aan script.Parent
require("./MySibling")
require((script.Parent).MySibling)
-- "../" prefix is gelijk aan script.Parent.Parent
require("../SiblingOfMyParent")
require((script.Parent.Parent).SiblingOfMyParent)
-- "../" kan worden gekoppeld om meerdere niveaus omhoog te gaan
require("../../SiblingOfMyGrandparent")
require((script.Parent.Parent).Parent.SiblingOfMyGrandparent)
-- "@self" prefix komt overeen met het script zelf
require("@self/MyChild")
require((script).MyChild)
-- "@game" prefix komt overeen met de DataModel root
require("@game/ReplicatedStorage/Shared/MyModule")
require((game).ReplicatedStorage.Shared.MyModule)select
setfenv
setmetatable
Parameters
newMeta:Variant |
Teruggaves
Codevoorbeelden
Setmetatable
local meta = {__metatable = "protected"}
local t = {}
setmetatable(t, meta) -- Dit stelt de metatable van t in
-- We hebben nu een tabel, t, met een metatable. Als we proberen deze te veranderen...
local ok, err = pcall(setmetatable, t, {})
assert(not ok and err:find("protected")) -- Fout: kan een beschermde metatable niet veranderentonumber
Parameters
arg:Variant |
| Standaardwaarde: 10 |
Teruggaves
Variant
Codevoorbeelden
Tonumber
print(tonumber("1337")) --> 1337 (gaat uit van basis 10, decimaal)
print(tonumber("1.25")) --> 1.25 (basis 10 kan decimale delen hebben)
print(tonumber("3e2")) --> 300 (basis 10 kan exponentieel deel hebben, 3 × 10 ^ 2)
print(tonumber("25", 8)) --> 21 (basis 8, octaal)
print(tonumber("0x100")) --> 256 (gaat uit van basis 16, hexadecimaal)
print(tonumber("roblox")) --> nil (veroorzaakt geen fout)
-- Tip: gebruik met assert als je wilt dat niet-converteerbare getallen een fout veroorzaken
local ok, err = pcall(function() assert(tonumber("roblox")) end)
print(ok and "Succes" or "Fout: " .. tostring(err)) --> Fout: assertie mislukttostring
unpack
Eigenschappen