分享此页面

# 预测逻辑表达式的完整赋值

VBScript 编程语言不会绕过布尔条件的赋值。即使表达式无需对所有条件赋值也可判断为 True 或 False，VBScript 仍会对布尔逻辑表达式中的所有条件赋值。例如，在以下示例中，<`语句 1`> 和 <`语句 2`> 都会赋值，即使 <`语句 1`> 解析为 False：

`<语句 1> AND <语句 2>`

## 建议

为避免错误，在尝试使用值和对象之前，应检查它们都不是 Null。

以下示例：

- 演示逻辑表达式的错误与正确用法
- 考虑到逻辑表达式如何赋值

Example: 不正确的用法

`value.Name` 即便在其值是 Null 时也会赋值。这会导致错误。

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

Example: 正确的用法

在以下条件下代码是正确的：`Value` 是包含 `Name` 属性的对象。代码可运行且没有错误。

    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
改进搜索结果的提示... ALM 帮助中心 ALM 帮助中心 ALM 帮助 17.0 全部查看本地帮助中心查看联机帮助中心后退在浏览器历史记录中后退前进在浏览器历史记录中前进删除突出显示的搜索项下一个主题转到下一个主题上一个主题转到上一个主题打印当前主题版本: