Toán tử

*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.

Một toán tử là một ký hiệu để thực hiện một phép toán hoặc đánh giá điều kiện.

Logic

Các toán tử logic trả về giá trị tùy thuộc vào giá trị boolean của các tham số đã cho. Nếu một tham số không phải là false hoặc nil, thì toán tử sẽ đánh giá nó là true. Không giống như nhiều ngôn ngữ khác, Luau coi cả số không và chuỗi rỗng đều là true. Bảng sau tóm tắt cách các toán tử logic hoạt động trong các biểu thức điều kiện.

Toán tửMô tả
andĐánh giá là true chỉ khi cả hai điều kiện đều đúng
orĐánh giá là true nếu một trong hai điều kiện là đúng
notĐánh giá là giá trị ngược lại của điều kiện

and

Toán tử nhị phân and trả về một trong hai tham số. Nếu tham số đầu tiên đánh giá là true, thì nó trả về tham số thứ hai. Ngược lại, nó trả về tham số đầu tiên.


print(4 and 5) -- 5
print(nil and 12) -- nil
print(false and 12) -- false
print(false and true) -- false
print(false and false) -- false
print(true and false) -- false
print(true and true) -- true

Bạn có thể sử dụng and để kiểm tra nhiều điều kiện trong cấu trúc điều khiển như câu lệnh ifvòng lặp while. Ví dụ, câu lệnh ifthen sau kiểm tra rằng cả hai điều kiện đều đúng:


local pasta = true
local tomatoSauce = true
if pasta == true and tomatoSauce == true then
print("Chúng tôi có bữa tối spaghetti")
else
print("Có thứ gì đó bị thiếu...")
end
-- Output: Chúng tôi có bữa tối spaghetti

or

Toán tử nhị phân or trả về một trong hai tham số. Nếu tham số đầu tiên đánh giá là true, thì nó trả về tham số đầu tiên. Ngược lại, nó trả về tham số thứ hai.


local y = x or 1
print(y) -- 1 vì x không tồn tại và do đó là nil
local d = false
local e = d or 1
print(e) -- 1 vì d là false
print(4 or 5) -- 4
print(nil or 12) -- 12
print(false or 12) -- 12
print(false or true) -- true
print(false or false) -- false
print(true or false) -- true
print(true or true) -- true

Bạn có thể sử dụng or để thực hiện các bài kiểm tra logic phức tạp trong cấu trúc điều khiển. Ví dụ, câu lệnh ifthen sau kiểm tra xem hai điều kiện có đúng hoặc một điều kiện thứ ba có đúng:


local pasta = false
local tomatoSauce = true
local garlicBread = true
if (pasta == true and tomatoSauce == true) or garlicBread == true then
print("Chúng tôi có bữa tối spaghetti HOẶC bánh mỳ tỏi")
else
print("Có thứ gì đó bị thiếu...")
end
-- Output: Chúng tôi có bữa tối spaghetti HOẶC bánh mỳ tỏi

not

Toán tử đơn not trả về giá trị boolean ngược lại của tham số. Nếu tham số là false hoặc nil, thì nó trả về true. Ngược lại, nó trả về false.


print(not true) -- false
print(not false) -- true
print(not nil) -- true
print(not "text") -- false
print(not 0) -- false

Bạn có thể sử dụng toán tử not để kích hoạt một điều kiện hoặc vòng lặp nếu một biến là false hoặc nil.


local nilVariable -- Biến được khai báo nhưng không có giá trị, nên nó là nil
local falseVariable = false -- Biến được khai báo với giá trị false
if not nilVariable then
print(nilVariable) -- Xuất "nil" vì nil không phải là true
end
if not falseVariable then
print(falseVariable) -- Xuất "false" vì false không phải là true
end

Bạn cũng có thể sử dụng toán tử not để kiểm tra giá trị ngược lại của một câu điều kiện nhiều điều kiện. Trong đoạn mã sau, câu điều kiện ifthen kiểm tra rằng không có trường hợp nào đúng khi ba lớn hơn bốn và năm lớn hơn bốn.


local three = 3
local four = 4
local five = 5
if not (three > four or five < four) then
print("Ba nhỏ hơn 4 và năm lớn hơn 4.")
end
-- Output: Ba nhỏ hơn 4 và năm lớn hơn 4.

Quan hệ

Các toán tử quan hệ so sánh hai tham số và trả về một boolean: true hoặc false.

Toán tửMô tảVí dụPhương thức liên kết
==Bằng nhau3 == 5false__eq
~=Không bằng nhau3 ~= 5true
>Lớn hơn3 > 5false
<Nhỏ hơn3 < 5true__lt
>=Lớn hơn hoặc bằng3 >= 5false
<=Nhỏ hơn hoặc bằng3 <= 5true__le

Số học

Luau hỗ trợ các toán tử nhị phân thông thường cùng với phép lũy thừa, phép chia lấy dư, và phủ định đơn.

Toán tửMô tảVí dụPhương thức liên kết
+Phép cộng1 + 1 = 2__add
-Phép trừ1 - 1 = 0__sub
*Phép nhân5 * 5 = 25__mul
/Phép chia10 / 5 = 2__div
//Phép chia làm tròn

10 // 4 = 2
-10 // 4 = -3

__idiv
^Phép lũy thừa2 ^ 4 = 16__pow
%Phép chia lấy dư13 % 7 = 6__mod
-Phủ định đơn-2 = 0 - 2__unm

Gán hợp thành

Bạn có thể sử dụng các toán tử gán hợp thành để đặt một biến bằng kết quả của một phép toán mà tham số đầu tiên là giá trị hiện tại của biến đó.

Phép toán trong một gán hợp thành chỉ xảy ra một lần. Ví dụ, nếu một biểu thức sinh ra một chỉ số ngẫu nhiên trong một bảng, Luau sẽ sử dụng cùng một chỉ số cho cả phép toán và gán.

Trong các ví dụ sau, giả sử local x = 3.

Toán tửPhép toánVí dụGiá trị mới của x
+=Phép cộngx += 25
-=Phép trừx -= 21
*=Phép nhânx *= 26
/=Phép chiax /= 21.5
//=Phép chia làm trònx //= 21
%=Phép chia lấy dưx %= 21
^=Phép lũy thừax ^= 29
..=Kết hợp chuỗix ..= " World!" "3 World!"

Khác

Các toán tử khác bao gồm kết hợp chuỗiđộ dài.

Toán tửMô tảVí dụPhương thức liên kết
..Kết hợp hai chuỗiprint("Xin chào " .. "Thế giới!")__concat
#Độ dài của bảngNếu tableVar = {1, 2, 3}, thì #tableVar == 3.__len
©2026 Roblox Corporation. Roblox, logo Roblox và Powering Imagination là các nhãn hiệu đã đăng ký và chưa đăng ký của chúng tôi tại Hoa Kỳ và các quốc gia khác.