工作中經常會遇到當前日期+1或者+n的需求
舉個例子:比如現在時間是2016-08-30, 需要顯示的是30+1或者是30+n。+1是31號正常,+2呢?話說本尊不曉得哪個月份有32號哈?當然一年中也不會有13月
下面說一下我用的兩種方法
第一種 通過本地字串方法tolocalestring()得到最新時間
//獲取當前時間,離開日期預設為t+1functiongetlocaltime
(addnum)
getlocaltime獲取當前日期的時間戳today ,時間戳是毫秒單位,所以需要將n轉化成毫秒n*24860*60*1000。(2)
簡單說就是:當前時間戳(毫秒) + 需要增加的時間(毫秒) = 想得到的未來時間(毫秒);
然後通過new date(想得到的未來時間(毫秒))獲取到加n之後的標準時間 如: wed aug 04 2016 15:27:14 gmt+0800 (中國標準時間)
再通過tolocalestring()方法轉化成本地字串 2016/8/4 下午3:28:11。
最後通過擷取和拼接字串得到
但是tolocalestring()方法有個坑,它存在瀏覽器相容性的問題。
問題描述:
date物件的tolocalestring方法在各個瀏覽器下的返回值存在格式上的差異。
造成的影響:
返回字串的格式及長度不一致。
並且受影響的並非某個瀏覽器,而是所有瀏覽器,哦買噶的
chrome:wed aug 03 2016 15:58:48 gmt+0800 (中國標準時間) tolocalestring 後: 2016/8/3 下午3:57:51
firefox:wed aug 03 2016 16:03:05 gmt+0800 tolocalestring 後: 2016/8/3 下午4:03:05
safari:wed aug 03 2016 16:06:37 gmt+0800 (öð¹ú±ê׼걼ä) tolocalestring 後: wednesday, august 03, 2016 16:06:37
可見這種方法在相容性上是沒有太大保障的,所以本尊立刻馬上換了種方法
functiongetlocaltime(addnum)
getlocaltime(10)所以通過getfullyear,getmonth,getdate的方法分別獲取年月日這種方法還是比較好的,建議用此方法哈
日期加天數
asp中dateadd函式用法 字串表示式,表示要新增的時間間隔。有關數值,請參閱 設定 部分。返回已新增指定時間間隔的日期。dateadd interval,number,date 引數interval 必選項。number 必選項。數值表示式,表示要新增的時間間隔的個數。數值表示式可以是正數 得...
日期加天數
asp中dateadd函式用法 字串表示式,表示要新增的時間間隔。有關數值,請參閱 設定 部分。返回已新增指定時間間隔的日期。dateadd interval,number,date 引數interval 必選項。number 必選項。數值表示式,表示要新增的時間間隔的個數。數值表示式可以是正數 得...
js 中日期格式
new date new date hidtargetduedate val 8 3600 1000 toisostring 2020 03 30t00 00 00.000z replace new regexp gm 相當於replaceall js中並沒有 replaceall方法 new in...