Anticipation de l’évaluation complète des expressions logiques
Le langage de programmation VBScript ne court-circuite pas l’évaluation des conditions booléennes. VBScript évalue tous les termes d’une expression logique booléenne, même si l’expression peut être établie comme True ou False sans évaluer tous ses termes. Par exemple, dans l’exemple suivant, <statement1> et <statement2> sont tous deux évalués, même si <statement1> se résout en False :
<statement 1> AND <statement 2>
Recommandations
Pour éviter les erreurs, vérifiez que toutes les valeurs et tous les objets ne sont pas nuls avant de tenter de les utiliser.
Les exemples suivants :
- démontrer l’utilisation correcte et incorrecte des expressions logiques
- prendre en compte la manière dont les expressions logiques sont évaluées
Example: Utilisation incorrecte
value.Name est évalué même si sa valeur est Null. Cela provoque une erreur.
Sub namecheck(value) If Not IsNull(value) And value.Name = "aName" Then ' ... End If End Sub
Le code est correct à condition que value soit un objet qui contient la propriété Name. Le code s’exécute sans erreur.
Sub namecheck(value) If Not IsNull(value) And Not IsEmpty(value) Then If value.Name = "aName" Then ' ... End If End If End Sub

