Menu
CoddyTech

Đánh giá ngắn mạch

Thuộc phần Nền tảng cơ bản trong hành trình Lua của Coddy. Bài học 23 trên 90.

Khi Lua đánh giá các toán tử and và or, nó dùng một cách tối ưu thông minh gọi là đánh giá đoản mạch (short-circuit evaluation). Điều này có nghĩa là Lua ngừng đánh giá ngay khi biết kết quả cuối cùng, có thể bỏ qua hoàn toàn một số phần của biểu thức.

Với toán tử and, nếu điều kiện đầu tiên là false, Lua sẽ biết ngay toàn bộ biểu thức là false mà không cần kiểm tra điều kiện thứ hai:

playerAlive = false
hasWeapon = true

canFight = playerAlive and hasWeapon
-- Lua chỉ kiểm tra playerAlive (false), không đánh giá hasWeapon

Tương tự, với toán tử or, nếu điều kiện đầu tiên là true, Lua biết kết quả sẽ là true và bỏ qua điều kiện thứ hai:

hasKey = true
hasPassword = false

canEnter = hasKey or hasPassword
-- Lua chỉ kiểm tra hasKey (true), không bao giờ đánh giá hasPassword

Tự làm thử

Bài học này không có thử thách code.

quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Nền tảng cơ bản

Tự luyện tập: Trình biên dịch Lua online