在VBScript中是否有任何变量声明放置规则,例如是否应始终在开始时声明?还是可以在使用时声明变量?哪个效率更高?
答案 0 :(得分:1)
让我们尝试一个简单的代码,其中包括Option Explicit
,以便VBScript解析器要求声明代码中使用的所有变量
Option Explicit
WScript.Echo TypeName( data )
WScript.Echo TypeName( MY_DATA )
Dim data : data = 10
Const MY_DATA = 10
WScript.Echo TypeName( data )
WScript.Echo TypeName( MY_DATA )
执行时会输出
Empty
Integer
Integer
Integer
那是
对data
的首次访问不会产生任何错误。悬挂了变量声明(Dim
语句)。如果在使用该变量的相同(或外部)范围内声明了该变量,则不会有任何问题。
但是第一个输出是Empty
。
这不适用于常量声明。在使用它的代码中替换了它的值,但是实际声明延迟到到达const
行(读取here)为止。
只要可以到达变量/常量(在相同或外部范围内声明),就不必在放置声明的位置(与VBScript解析器/引擎无关)。
但是,您或其他人当然必须维护代码。能够将变量放置在任何地方并不意味着您应该做类似之前的代码(请不要这样做)。如果在初始化/使用之前进行了变量声明,则读取/维护代码要容易得多。确切的实现方式仅取决于编码样式。