vbscript - 如何使用 asp classic 获取 12 个月前的月份名称?
问题描述
我想显示每个月的简称,比上个月早 12 个月,但是下面我在 mon1 和 mon2 上得到一个错误,我想因为那是去年?
mon1=MonthName(Month(Now())-11,1)
mon2=MonthName(Month(Now())-10,1)
mon3=MonthName(Month(Now())-9,1)
mon4=MonthName(Month(Now())-8,1)
mon5=MonthName(Month(Now())-7,1)
mon6=MonthName(Month(Now())-6,1)
mon7=MonthName(Month(Now())-5,1)
mon8=MonthName(Month(Now())-4,1)
mon9=MonthName(Month(Now())-3,1)
mon10=MonthName(Month(Now())-2,1)
mon11=MonthName(Month(Now())-1,1)
mon12=MonthName(Month(Now()),1)
那么我现在如何显示,十二月,一月,二月,三月,四月,五月,六月,七月,八月,九月,十月谢谢。
解决方案
这里的问题是该Month()
函数返回一个介于 1 和 12 之间的整数来表示每个月。相反,您希望在Now()
用Month()
.
下面是一个使用For
循环和单一维度执行此操作的示例Array
。
Dim dt: dt = Now()
Dim i, mon(12)
Const numOfMonths = 12
For i = 1 To numOfMonths
mon(i) = MonthName(Month(DateAdd("m", i - numOfMonths, dt)), True)
Next
Call Response.Write(Join(mon, vbCrLf))
输出:
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
Dec
Nov
Oct
推荐阅读
- ubuntu - 如何将ubuntu服务器连接到eduroam
- javascript - 为什么这个 AJAX 调用不重定向到 `/login` URL?
- java - 为什么流行的编程语言如 c、c++、java、python、PHP 不支持后缀(反向波兰表示法)或前缀表达式?
- r - 如何计算bookdown中的单词
- r - 用水平替换因子的值范围
- java - 当用户使用 Android Java 进入地理围栏时如何向 MainActivity 发送通知
- r - R:为什么多元法线密度之和不等于1
- jax-rs - 如何使用 Spring saml 在 jax-rs 中实现 saml
- spring - 春季安全。特殊差异 - accountNonExpired vs credentialsNonExpired vs accountNonLocked
- amazon-web-services - nginx 作为 EKS 上的负载均衡器