Luau is de scripttaal die makers gebruiken in Roblox Studio. Het is een snelle, kleine, veilige, geleidelijk getypeerde inbedbare scripttaal afgeleid van Lua 5.1.
Ondersteuning in Studio
De Script Editor in Studio ondersteunt Luau met autocompletion, syntaxismarkering, statische linting, typecontrole en scriptanalyse. Het toont ook documentatie en functietekens voor leden van de Roblox Engine API.
Typen
Luau omvat de volgende datatypes:
- Nil vertegenwoordigt niet-bestaande of niets. Het is anders dan enige andere waarde of datatype.
- Numbers, of double, vertegenwoordigen double-precision (64-bit) drijvende-komma getallen.
- Strings zijn reeksen van tekens, zoals letters, cijfers en symbolen.
- Enums zijn vaste lijsten van items.
Luau is standaard dynamisch getypeerd. Variabelen, functiem parameters en retourwaarden kunnen elk datatype zijn. Dit helpt je om sneller code te schrijven omdat je geen types voor elk stuk data hoeft op te geven. Je kunt nog steeds expliciete types voor variabelen in Luau declareren en strikte typecontrole inschakelen om typeproblemen duidelijk en gemakkelijk te lokaliseren.
Gegevensstructuren
Je kunt ook de volgende gegevensstructuren implementeren met behulp van primitieve datatypes:
- Stacks zijn Last-In-First-Out verzamelingen van items die je kunt implementeren met tabellen.
- Queues zijn First-In-First-Out verzamelingen van items die je kunt implementeren met tabellen.
- Metatables zijn tabellen met geavanceerde configuraties die functionaliteiten kunnen bereiken zoals het opslaan van paren van sleutels en waarden en het uitvoeren van rekenkundige bewerkingen.
Kenmerken
In Luau kunnen variabelen en functies een globale en lokale scope binnen een script hebben. Luau heeft logische, relationele en samengestelde toewijzings operators. Je kunt besturingsstructuren en functies gebruiken om te bepalen wanneer Luau code uitvoert. Veel operators en variabele toewijzingen voeren type coercion uit om waarden te veranderen naar de types die Luau verwacht.