Apprendre
Moteur principal
Luau globals

*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.


Résumé

Fonctions
assert(value: Variant,errorMessage: string):Variant
collectgarbage(operation: string):Variant
Déprécié
error(message: Variant,level: number):()
getfenv(stack: Variant):table
Déprécié
getmetatable(t: Variant):Variant
loadstring(contents: string,chunkname: string):Variant
newproxy(addMetatable: boolean):userdata
next(t: table,lastKey: Variant):Variant,Variant
pcall(func: function,args: Tuple):boolean,Variant
print(params: Tuple):()
rawequal(v1: Variant,v2: Variant):boolean
rawget(t: table,index: Variant):Variant
rawset(t: table,index: Variant,value: Variant):table
require(module: ModuleScript | string | number):Variant
select(index: Variant,args: Tuple):Tuple
setfenv(f: Variant,fenv: table):Variant
Déprécié
setmetatable(t: table,newMeta: Variant):table
tonumber(arg: Variant,base: number):Variant
tostring(e: Variant):string
type(v: Variant):string
unpack(list: table,i: number,j: number):Variant
xpcall(f: function,err: function,args: Tuple):boolean,Variant
Propriétés

Référence API
Fonctions
assert
assert(
value:Variant, errorMessage:string
):Variant
Paramètres
value:Variant
errorMessage:string
Valeur par défaut : assertion failed!
Retours
Variant
Échantillons de code
Affirmer
local product = 90 * 4
assert(product == 360, "Oh là là, la multiplication est cassée")
-- La ligne ci-dessus ne fait rien, car 90 fois 4 est 360

collectgarbage
Déprécié

error
error(
message:Variant, level:number
):()
Paramètres
message:Variant
level:number
Valeur par défaut : 1
Retours
()

gcinfo
gcinfo():number
Retours

getfenv
Déprécié

getmetatable
getmetatable(t:Variant):Variant
Paramètres
t:Variant
Retours
Variant
Échantillons de code
Obtenir la métatable
local meta = {}
local t = setmetatable({}, meta)
print(getmetatable(t) == meta) --> true
-- Rendre la métatable originale irrécupérable en définissant la métaméthode __metatable :
meta.__metatable = "protégé"
print(getmetatable(t)) --> protégé

ipairs
Paramètres
Échantillons de code
Ipairs
local fruits = {"apples", "oranges", "kiwi"}
for index, fruit in ipairs(fruits) do
print(index, fruit) --> 1 pommes, 2 oranges, 3 kiwi, etc...
end

loadstring
loadstring(
contents:string, chunkname:string
):Variant
Paramètres
contents:string
chunkname:string
Retours
Variant

newproxy
newproxy(addMetatable:boolean):userdata
Paramètres
addMetatable:boolean
Valeur par défaut : false
Retours

next
next(
t:table, lastKey:Variant
):Variant,Variant
Paramètres
lastKey:Variant
Valeur par défaut : nil
Retours
Variant, Variant

pairs
pairs(t:table):function,table,Variant
Paramètres
Retours
function, table, Variant
Échantillons de code
Paires
local scores = {
["John"] = 5,
["Sally"] = 10
}
for name, score in pairs(scores) do
print(name .. " a un score : " .. score)
end

pcall
pcall(
func:function, args:Tuple
):boolean,Variant
Paramètres
args:Tuple
Retours
boolean, Variant
Échantillons de code
Pcall
local function divideByFive(n: number): number
return n / 5
end
local success, errorMessage = pcall(divideByFive, "notANumber") -- Résulte en une erreur...
if success then
-- Gérer la réponse réussie...
else
print("Message d'erreur:", errorMessage)
end

print
print(params:Tuple):()
Paramètres
params:Tuple
Retours
()

rawequal
rawequal(
v1:Variant, v2:Variant
Paramètres
v1:Variant
v2:Variant
Retours

rawget
rawget(
t:table, index:Variant
):Variant
Paramètres
index:Variant
Retours
Variant

rawlen
rawlen(t:table):number
Paramètres
Retours

rawset
rawset(
t:table, index:Variant, value:Variant
Paramètres
index:Variant
value:Variant
Retours

require
require(module:ModuleScript | string | number):Variant
Paramètres
Retours
Variant
Échantillons de code
Exiger la résolution de module
-- Le préfixe "./" est équivalent à script.Parent
require("./MySibling")
require((script.Parent).MySibling)
-- Le préfixe "../" est équivalent à script.Parent.Parent
require("../SiblingOfMyParent")
require((script.Parent.Parent).SiblingOfMyParent)
-- "../" peut être enchaîné pour remonter plusieurs niveaux
require("../../SiblingOfMyGrandparent")
require((script.Parent.Parent).Parent.SiblingOfMyGrandparent)
-- Le préfixe "@self" correspond au script lui-même
require("@self/MyChild")
require((script).MyChild)
-- Le préfixe "@game" correspond à la racine du DataModel
require("@game/ReplicatedStorage/Shared/MyModule")
require((game).ReplicatedStorage.Shared.MyModule)

select
select(
index:Variant, args:Tuple
Paramètres
index:Variant
args:Tuple
Retours
Échantillons de code
Sélectionner
print(select(2, "A", "B", "C")) --> B C
print(select(-1, "A", "B", "C")) --> C
print(select("#", "A", "B", "C")) --> 3

setfenv
Déprécié

setmetatable
setmetatable(
t:table, newMeta:Variant
Paramètres
newMeta:Variant
Retours
Échantillons de code
Définir la métatable
local meta = {__metatable = "protected"}
local t = {}
setmetatable(t, meta) -- Cela définit la métatable de t
-- Nous avons maintenant une table, t, avec une métatable. Si nous essayons de la changer...
local ok, err = pcall(setmetatable, t, {})
assert(not ok and err:find("protected")) -- Erreur : impossible de changer une métatable protégée

tonumber
tonumber(
arg:Variant, base:number
):Variant
Paramètres
arg:Variant
base:number
Valeur par défaut : 10
Retours
Variant
Échantillons de code
Tonumber
print(tonumber("1337")) --> 1337 (suppose base 10, décimal)
print(tonumber("1.25")) --> 1.25 (la base 10 peut avoir des parties décimales)
print(tonumber("3e2")) --> 300 (la base 10 peut avoir une partie exponentielle, 3 × 10 ^ 2)
print(tonumber("25", 8)) --> 21 (base 8, octale)
print(tonumber("0x100")) --> 256 (suppose base 16, hexadécimal)
print(tonumber("roblox")) --> nil (ne soulève pas d'erreur)
-- Astuce : utilisez avec assert si vous souhaitez que les nombres non convertibles soulèvent une erreur
local ok, err = pcall(function() assert(tonumber("roblox")) end)
print(ok and "Succès" or "Erreur : " .. tostring(err)) --> Erreur : échec de l'assertion

tostring
tostring(e:Variant):string
Paramètres
e:Variant
Retours
Échantillons de code
Tostring
local isRobloxCool = true
-- Convertir le booléen en chaîne puis concaténer :
print("Roblox est cool : " .. tostring(isRobloxCool)) --> Roblox est cool : true

type
type(v:Variant):string
Paramètres
v:Variant
Retours

unpack
unpack(
list:table, i:number, j:number
):Variant
Paramètres
list:table
Valeur par défaut : 1
Valeur par défaut : #list
Retours
Variant

xpcall
xpcall(
f:function, err:function, args:Tuple
):boolean,Variant
Paramètres
args:Tuple
Retours
boolean, Variant

Propriétés
_G

_VERSION
_VERSION:string

©2026 Société Roblox. Roblox, le logo Roblox et Powering Imagination font partie de nos marques déposées aux États-Unis et dans d'autres pays.