var today = new Date()//获取当前时间,并将当前时间赋值给today。
var someDay = new Date(1999, 0, 11)//用构造函数初始化Date,时间为1990年1月1日。
//注意表示月份的0~11的数值,依次表示1~12月。
var anotherDay = new Date(1999, 6, 11, 0, 0, 0)//构造函数的六个参数依次表示年、月、日、时、分、秒。
若需要修改日期,可以使用的一系列set方法,如setDate()、setMonth()、setFullYear()、setYear()、setHours()、setMinutes()、setSeconds()、setMilliseconds()、setTime()。
与set方法对应的,JavaScript也提供了一系列的get方法,这里就不列出,你可以在秒秒学的日期类型小节中找到。总之,用Date类型来表示日期是比较合理,也是较为方便的。
JS中分割字符串为字符串数组:strArr = str.split("-")JS中合并字符串数组为字符串:str = strArr.join("-")
你的问题的解决办法:
先分割日期:
var strArr = str.split("-")
//strArr[0] = 年
//strArr[1] = 月
//strArr[2] = 日
由此可知,对于第一种情况,我们修改年份即可:
strArr[0] = "2008"
对于第二种情况,我们修改月份:
strArr[1] = "05"
最后,将修改好的合并成新的日期:
str = strArr.join("-")
本来想回答的,但发现有点问题。你提出的问题好像应该是时间和十进制数互转(如果不是就当我没答过吧)。
可是如果是十字制时间格式吧,看你提供的例子不对啊,首先是格式不对,你那个推算出来的结果是没有“年”的,没有“年”是没法算,标准的应该是2010.1279531964才对,我想你可能把年省了,可我按我的算法还是得不到1279531964,反过来推算亦然。我的结果是2010.638141846707819。
所以我就搞不懂了。
---------------------------------------------------------------
'函数部分
Function GetDate(Val,e)
Dim GdDate
GdDate="1970-1-1 08:00:00"
If e=0 then
GetDate=DateAdd("s",Val,GdDate)
Else
GetDate=DateDiff("s",GdDate,Val)
End If
End Function
'测试数字转日期,注意后面参数为0
Response.Write GetDate(1279531964,0)
'测试日期转数字,注意后面参数为1
Response.Write GetDate("2010-7-19 17:32:44",1)
因为我现在没有VB环境,这是我在ASP里写的函数,测试通过。ASP跟VB的语法是一样的你到VB里稍做修改就可以用了。