將輸入得到的時間減少1秒:20:00:00 ——— 19:59:59
方法一:普通時間轉換
endDateMap(date){ var h = new Date(date).getHours() var m = new Date(date).getMinutes()-1 if(m == -1){ if(h == 0){ h = 23 }else{ h = h <10 ? '0'+String(h-1):h-1 } m = 59 }else{ h = h <10 ? '0'+String(h):h } m = m <10 ? ('0'+String(m)):m return(h+':'+m + ':59') }
方法二:通過時間戳轉換
endDateMap(date){
var t = new Date(date)
var t_s = t.getTime();//轉化為時間戳毫秒數
var nt = new Date(date);//定義一個新時間
nt.setTime(t_s - 1000);//設置新時間比舊時間少一秒
nt = new Date(nt)
return(
nt.getHours() + ':' + nt.getMinutes()+ ':' +nt.getSeconds()
)
}
將獲取的時間增加1秒:19:59:59 —— 20:00:00
方法一:普通時間轉換
endDateFilter(val){ var time = '2017-06-17'+' '+val+':00' var h = new Date(time).getHours() var m = new Date(time).getMinutes()+1 if(m == 60){ if(h == 23){ h = '00' }else{ h = h <10 ? '0'+String(h+1):h+1 } m = 0 }else{ h = h <10 ? '0'+String(h):h } m = m <10 ? '0'+String(m):m var date = '2017-06-17'+' '+h+':'+m+':00' var t = Date.parse(date); if (!isNaN(t)) { return new Date(Date.parse(date.replace(/-/g, "/"))); } else { return new Date(); } }
方法二:通過時間戳轉換
endDateMap(date){ var t = new Date(date) var t_s = t.getTime();//轉化為時間戳毫秒數 var nt = new Date(date);//定義一個新時間 nt.setTime(t_s + 1000);//設置新時間比舊時間多一秒 nt = new Date(nt) return( nt.getHours() + ':' + nt.getMinutes()+ ':' +nt.getSeconds() ) }
(感謝大神師兄指出時間戳轉換這個思路,我原本沒想到用時間戳的......)
