Engine Global
Luau globals
*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.
Zusammenfassung
Funktionen
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-Referenz
Funktionen
assert
Parameter
value:Variant |
| Standardwert: assertion failed! |
Rückgaben
Variant
Code-Beispiele
Behaupten
local product = 90 * 4
assert(product == 360, "Oh nein, die Multiplikation ist kaputt")
-- Die Zeile oben macht nichts, weil 90 mal 4 360 istcollectgarbage
error
getfenv
getmetatable
getmetatable(t:Variant):Variant
Parameter
t:Variant |
Rückgaben
Variant
Code-Beispiele
Getmetatable
local meta = {}
local t = setmetatable({}, meta)
print(getmetatable(t) == meta) --> true
-- Machen Sie die ursprüngliche Metatabelle nicht wiederherstellbar, indem Sie die __metatable-Metamethode festlegen:
meta.__metatable = "geschützt"
print(getmetatable(t)) --> geschütztipairs
loadstring
newproxy
next
pairs
pcall
Rückgaben
Code-Beispiele
Pcall
local function divideByFive(n: number): number
return n / 5
end
local success, errorMessage = pcall(divideByFive, "notANumber") -- Führt zu einem Fehler...
if success then
-- Erfolgreiche Antwort verarbeiten...
else
print("Fehlermeldung:", errorMessage)
endrawset
require
Parameter
Rückgaben
Variant
Code-Beispiele
Modulauflösung erforderlich
-- "./"-Präfix entspricht script.Parent
require("./MySibling")
require((script.Parent).MySibling)
-- "../"-Präfix entspricht script.Parent.Parent
require("../SiblingOfMyParent")
require((script.Parent.Parent).SiblingOfMyParent)
-- "../" kann verkettet werden, um mehrere Ebenen nach oben zu gehen
require("../../SiblingOfMyGrandparent")
require((script.Parent.Parent).Parent.SiblingOfMyGrandparent)
-- "@self"-Präfix entspricht dem Skript selbst
require("@self/MyChild")
require((script).MyChild)
-- "@game"-Präfix entspricht der DataModel-Wurzel
require("@game/ReplicatedStorage/Shared/MyModule")
require((game).ReplicatedStorage.Shared.MyModule)select
setfenv
setmetatable
Parameter
newMeta:Variant |
Rückgaben
Code-Beispiele
Metatabelle setzen
local meta = {__metatable = "geschützt"}
local t = {}
setmetatable(t, meta) -- Dies setzt die Metatabelle von t
-- Wir haben jetzt eine Tabelle, t, mit einer Metatabelle. Wenn wir versuchen, sie zu ändern...
local ok, err = pcall(setmetatable, t, {})
assert(not ok and err:find("geschützt")) -- Fehler: kann eine geschützte Metatabelle nicht änderntonumber
Parameter
arg:Variant |
| Standardwert: 10 |
Rückgaben
Variant
Code-Beispiele
Tonumber
print(tonumber("1337")) --> 1337 (geht von Basis 10, Dezimal aus)
print(tonumber("1.25")) --> 1.25 (Basis 10 kann Dezimalstellen haben)
print(tonumber("3e2")) --> 300 (Basis 10 kann Exponentenanteil haben, 3 × 10 ^ 2)
print(tonumber("25", 8)) --> 21 (Basis 8, oktal)
print(tonumber("0x100")) --> 256 (geht von Basis 16, hexadezimal aus)
print(tonumber("roblox")) --> nil (wirft keinen Fehler)
-- Tipp: Verwenden Sie assert, wenn Sie möchten, dass nicht konvertierbare Zahlen einen Fehler auslösen
local ok, err = pcall(function() assert(tonumber("roblox")) end)
print(ok and "Erfolg" or "Fehler: " .. tostring(err)) --> Fehler: Assertion fehlgeschlagentostring
unpack
Eigenschaften