if-statement – 如何在VBScript for Classic-ASP中单行执行If语句?

“单行if语句”存在于C#和VB.NET中,与许多其他编程和脚本语言格式如下
lunchLocation = (dayOfTheWeek == "Tuesday") ? "Fuddruckers" : "Food Court";

有没有人知道是否有甚么在VBScript什么是extact语法?

解决方法

条件三元运算符不存在于开箱即用,但是很容易在VBScript中创建自己的版本:
Function IIf(bClause,sTrue,sFalse)
    If CBool(bClause) Then
        IIf = sTrue
    Else 
        IIf = sFalse
    End If
End Function

你可以使用这个,根据你的例子:

lunchLocation = IIf(dayOfTheWeek = "Tuesday","Fuddruckers","Food Court")

这个优点使用单行如果/ Then / Else是它可以直接连接到其他字符串。在单行上使用If / Then / Else必须是该行上唯一的语句。

对此没有错误检查,并且该函数期望一个形式良好的表达式,可以被计算为以子句传入的布尔值。对于一个更复杂和更全面的回答见下文。希望这个简单的回应整齐地展示了答案的逻辑。

还值得注意的是,与真正的三元运算符不同,无论bClause的值如何,都将评估sTrue和sFalse参数。如果您在问题中使用字符串,这是很好的,但如果您将函数作为第二个和第三个参数传递,那么非常小心!

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....