当调用 CDbl(Now()) 时,VBScript 中的 Now() 似乎以 10,000,000 秒精度返回时间。在尝试使用它来编写返回CIM_DATETIME 格式的更准确的 now 实现时,我发现在 VBScript 中,尽管特别精确,但并不是很准确,时间每秒只更新一次。这可以通过观察以下输出来证明:
i = 0
While i < 50
gnow = Cdbl(now)
result = (gnow - Int(gnow))
WScript.Echo CDate(gnow)
WScript.Echo "Iteration " & i & ": " & result
WScript.Sleep(100)
i = i + 1
Wend
我现在要回答的问题是,给定一个运行时间不到一秒的调用 Now() 的 VBScript,Now() 将返回什么时间?是脚本解释器启动的时间,Now() 被调用的时间,还是其他什么?