Schreiben Sie Zwang

*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.

Wenn Luau versucht, einen Wert oder eine Variable in einem Betrieb zu verwenden, wie z. B. Arithmetik, Konzentration oder 2>Zuweisung2>, aber der Wert nicht der erwarteten Art ist, dann konvertiert Luau ( 5>Köder5> ) den Wert, um seine eingebenzu ändern. Kö

Arithmetik

Luau zwingt Streifen zu Zahlen in arithmetischen Operationen . Dieses Verhalten wird in Luau integriert. Wenn die Arten für Arithmetik inkompatibel sind, ruft Luau einen Fehler an und führt den Rest des Skript, das. PL: die Skriptsnicht aus. Zum Beispiel können Sie keine Zeichen zu einer Zahl hinzufügen, wenn die Zeichen keine Zahl repräsentieren.


print(100 + "7") -- 107
print(100 - "7") -- 93
print("1000" + 234) -- 1234
print("1000" - 234) -- 766
print("hello" + 234) -- error: attempt to perform arithmetic (add) string and number

Konzentration

In der Konzentration Luau zwingt Zahlen in Zeichen. Um eine Zahl in ein Zeichen umzuwandeln, ohne Coercion zu verwenden, verwenden Sie die Library.String.format() -Funktion.


print("Pi is " .. math.pi) --> Pi ist 3.1415926535898
print("Pi is " .. 3.1415927) --> Pi ist 3.1415927
-- Runden zu drei Zeichen
print("Pi is " .. string.format("%.3f", 3.1415927)) -- Pi is 3.142

Zuordnen

Einige Eigenschaften erwarten bestimmte Datenarten, wie z. B. einen Enumerator oder eine String, aber Sie können dem Wert eines anderen Typs einen Wert zuweisen und Luau verwandelt den Wert in den Typ, den die Eigenschaft erwartet.

Enums

Luau zwingt Zahlen und Strings von Enumerals in den vollständigen Enumeralnamen. Zum Beispiel können Sie den Wert der Part.Material -Eigenschaft mit einer Zahl, einer Strings oder einem vollständigen Enumeralnamen namens, und die print() -Funktion druckt immer den vollständigen Enumeralnamen aus. Es ist eine beste Praktik, expliz zu sein und den vollständigen Enumeralnamen zu verw


local part1 = Instance.new("Part")
part1.Parent = workspace
part1.Material = 816
print(part1.Material) -- enum.Material.Concrete
local part2 = Instance.new("Part")
part2.Parent = workspace
part2.Material = "Concrete"
print(part2.Material) -- enum.Material.Concrete
-- Dies ist die beste Praxis, da es die eindeutigste ist
local part3 = Instance.new("Part")
part3.Parent = workspace
part3.Material = Enum.Material.Concrete
print(part3.Material) -- Enum.Material.Concrete

Tageszeit

Die DateTime Eigenschaften, die definiert, ob es Nacht, Tag oder irgendeine andere Zeit ist, ist eine Stringsdarstellung des Datatype.DateTimeeingeben. Wenn Sie einer Zahl zu 1>Class.Lighting.TimeOfDay1> zuweisen, konvertiert Luau sie in die Stringsdarstellung von 4>Datatype.DateTime4>.


local Lighting = game:GetService("Lighting")
Lighting.TimeOfDay = "05:00:00"
print(Lighting.TimeOfDay) -- 05:00:00
Lighting.TimeOfDay = 5
print(Lighting.TimeOfDay) -- 05:00:00