Share this page

# Anticipating Full Evaluation of Logical Expressions

The VBScript programming language does not short-circuit evaluation of Boolean conditions. VBScript evaluates all the terms in a Boolean logical expression, even if the expression can be established as True or False without evaluating all its terms. For example, in the following example, both <`statement1`> and <`statement2`> are evaluated, even if <`statement1`> resolves to False:

`<statement 1> AND <statement 2>`

## Recommendations

To avoid errors, check that all values and objects are not Null before attempting to use them.

The following examples:

- demonstrate incorrect and correct usage of logical expressions
- take into consideration how logical expressions are evaluated

Example: Incorrect Usage

`value.Name` is evaluated even when its value is Null. This causes an error.

    Sub namecheck(value)
            If Not IsNull(value) And value.Name = "aName" Then
                ' ...
              End If
    End Sub

Example: Correct Usage

The code is correct on the condition that `value` is an object that contains the `Name` property. The code runs without errors.

    Sub namecheck(value)
        If Not IsNull(value) And Not IsEmpty(value) Then
             If value.Name = "aName" Then
                ' ...
            End If
          End If
    End Sub

https://admhelp.microfocus.com ALM 8942
Tips to improve your search results... ALM Help Center ALM Help Center ALM Help 15.5-15.5.1 All View Local Help Center View Online Help Center back Go back in browser history forward Go forward in browser history Remove search highlights next topic Go to next topic previous topic Go to previous topic Print the current topic Version: