Menu
Coddy logo textTech

Évaluation court-circuit

Fait partie de la section Fundamentals du Journey Lua de Coddy — leçon 23 sur 90.

Les opérateurs and et or utilisent une optimisation astucieuse appelée évaluation court-circuit. Cela signifie que Lua arrête l'évaluation dès qu'il connaît le résultat final, ignorant potentiellement des parties de l'expression entièrement.

Pour l'opérateur and, si la première condition est false, Lua sait immédiatement que l'expression entière sera false sans vérifier la deuxième condition :

playerAlive = false
hasWeapon = true

canFight = playerAlive and hasWeapon
-- Lua vérifie seulement playerAlive (false), n'évalue jamais hasWeapon

De même, pour l'opérateur or, si la première condition est true, Lua sait que le résultat sera true et ignore la deuxième condition :

hasKey = true
hasPassword = false

canEnter = hasKey or hasPassword
-- Lua vérifie uniquement hasKey (true), n'évalue jamais hasPassword

Aide-mémoire

Lua utilise l'évaluation court-circuit pour les opérateurs and et or, arrêtant l'évaluation dès que le résultat final est connu.

Pour l'opérateur and : si la première condition est false, la seconde condition n'est jamais évaluée :

playerAlive = false
hasWeapon = true

canFight = playerAlive and hasWeapon
-- Vérifie uniquement playerAlive (false), ignore hasWeapon

Pour l'opérateur or : si la première condition est true, la seconde condition n'est jamais évaluée :

hasKey = true
hasPassword = false

canEnter = hasKey or hasPassword
-- Vérifie uniquement hasKey (true), ignore hasPassword

Essayez vous-même

Cette leçon ne comprend pas de défi de code.

quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fundamentals