请教个关于时间格式设置的问题。

LibraLjh 2003-09-23 12:48:10
var now=new Date();
var year=now.getYear();
var month=now.getMonth()+1;
var date=now.getDate();
这样取出来的时间格式是“单位”的,例如 2003-9-23,如果,我想把它显示成“双位”,就是 2003-09-23,也就是,数字不满两位时,前面补“0”,该怎样处理?
...全文
47 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
BainStudio 2003-09-23
  • 打赏
  • 举报
回复
给你一个思路.
使用数组:因为你生成的字符是:2003-9-23
代码:
<%
DIM Timer,SpTimer,i,TimerStr
Timer = FormatDateTime(now(),2)
SpTimer = Split(Timer,"-")
for i = 0 to Ubound(SpTimer)
If len(SpTimer(i)) = 1 Then
TimerStr = TimerStr & "-0"&SpTimer(i)
Else
TimerStr = TimerStr & "-" & SpTimer(i)
End If
next
Response.Write Right(TimerStr,len(TimerStr)-1) & "<BR>"
%>

以上是可以实现.但是比较繁琐.希望你早日有更好的.
Climber12 2003-09-23
  • 打赏
  • 举报
回复
month=right("0"&month,2)
这个思路怎么样??
warlord 2003-09-23
  • 打赏
  • 举报
回复
month.lenth 显示month下所属的子项的个数,而你的month是没有子项的。
LibraLjh 2003-09-23
  • 打赏
  • 举报
回复
谢谢楼上大哥指点。我之前是这样想的,用 length去判断,如果 length < 2 的时候,就在该数前面加 “0”,可就是不知道为什么,我的 Response.Write ((month).lenth),总是没有输出,可Response.Write (month),却能显示为 9,我的想法&做法错哪了? 盼望指点。
  • 打赏
  • 举报
回复
使用字符串存贮时间,分别取得年,月,日

if bytMonth < 10 then
bytMonth = "0" & bytMonth
else
bytMonth = bytMonth
end if

if bytDay < 10 then
bytDay = "0" & bytDay
else
bytDay = bytDay
end if

strDate = intYear & "-" & bytMonth & "-" & bytDay
....

这是用vbs写的,可以写成函数

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧