1.時間的獲取ui
var myDate = new Date(); myDate.getYear(); //獲取當前年份(2位) myDate.getFullYear(); //獲取完整的年份(4位,1970-????) myDate.getMonth(); //獲取當前月份(0-11,0表明1月) // 因此獲取當前月份是myDate.getMonth()+1; myDate.getDate(); //獲取當前日(1-31) myDate.getDay(); //獲取當前星期X(0-6,0表明星期天) myDate.getTime(); //獲取當前時間(從1970.1.1開始的毫秒數) myDate.getHours(); //獲取當前小時數(0-23) myDate.getMinutes(); //獲取當前分鐘數(0-59) myDate.getSeconds(); //獲取當前秒數(0-59) myDate.getMilliseconds(); //獲取當前毫秒數(0-999) myDate.toLocaleDateString(); //獲取當前日期 var mytime=myDate.toLocaleTimeString(); //獲取當前時間 myDate.toLocaleString( ); //獲取日期與時間
2.獲取時間戳spa
JS獲取當前時間戳的方法-JavaScript 獲取當前毫秒時間戳有如下三種方法: var timestamp =Date.parse(new Date()); 結果:1280977330000 //不推薦; 毫秒改爲了000顯示 var timestamp =(new Date()).valueOf(); 結果:1280977330748 //推薦; var timestamp=new Date().getTime(); 結果:1280977330748 //推薦;
注意:js中單獨調用new Date(); 顯示這種格式 Mar 31 10:10:43 UTC+0800 2012 .net
可是用new Date() 參與計算會自動轉換爲從1970.1.1開始的毫秒數code
3.將字符串形式的日期轉換成日期對象展現orm
var strTime="2019-02-01"; //字符串日期格式
var date= new Date(Date.parse(strTime.replace(/-/g, "/"))); //轉換成Data();
new Date() ; //參數能夠爲整數; 也能夠爲字符串; 但格式必須正確 new Date(2019,1,1); //正確 new Date("2019/1/1"); //正確 new Date("2019-1-1"); //正確 new Date( year, month, date, hrs, min, sec) 按給定的參數建立一日期對象 參數說明: year的值爲:需設定的年份-1900。例如需設定的年份是1997則year的值應爲97,即1997-1900的結果。因此Date中可設定的年份最小爲1900; month的值域爲0~11,0表明1月,11表表明12月; date的值域在1~31之間; hrs的值域在0~23之間。從午夜到第二天凌晨1點間hrs=0,從中午到下午1點間hrs=12; min和sec的值域在0~59之間。 例 Date day=new Date(11,3,4); //day中的時間爲:04-Apr-11 12:00:00 AM 另外,還能夠給出不正確的參數。 例 設定時間爲1910年2月30日,它將被解釋成3月2日。 Date day=new Date(10,1,30,10,12,34); System.out.println("Day's date is:"+day); //打印結果爲:Day's date is:Web Mar 02 10:13:34 GMT+08:00 1910
4.日期格式轉爲日期標準字符串:年月日對象
var formatDate = function (date) { var y = date.getFullYear(); var m = date.getMonth() + 1; m = m < 10 ? '0' + m : m; var d = date.getDate(); d = d < 10 ? ('0' + d) : d; return y + '-' + m + '-' + d; };
5.js方法返回值:年月日 時分秒blog
var formatDateTime = function (date) {
var y = date.getFullYear(); var m = date.getMonth() + 1; m = m < 10 ? ('0' + m) : m; var d = date.getDate(); d = d < 10 ? ('0' + d) : d; var h = date.getHours(); h=h < 10 ? ('0' + h) : h; var minute = date.getMinutes(); minute = minute < 10 ? ('0' + minute) : minute; var second=date.getSeconds(); second=second < 10 ? ('0' + second) : second; return y + '-' + m + '-' + d+' '+h+':'+minute+':'+second;
}
調用:formatDate(new Date())ip
6.獲取固定時間的時間戳,獲取當前時間看上面2字符串
let data ="2019-02-01"
var timestamp1 = Date.parse(new Date(data));//轉成的時間戳是年月日 時分秒 把毫秒改爲000顯示
var timestamp2 = (new Date(data)).valueOf();//轉成的時間戳是年月日 時分秒毫秒
var timestamp3 = new Date(data).getTime();//轉成的時間戳是年月日 時分秒毫秒
7.時間戳轉成日期get
function format(shijian){ let date = new Date(shijian) var y = date.getFullYear(); var m = date.getMonth() + 1; m = m < 10 ? ('0' + m) : m; var d = date.getDate(); d = d < 10 ? ('0' + d) : d; var h = date.getHours(); h=h < 10 ? ('0' + h) : h; var minute = date.getMinutes(); minute = minute < 10 ? ('0' + minute) : minute; var second=date.getSeconds(); second=second < 10 ? ('0' + second) : second; return y + '-' + m + '-' + d+' '+h+':'+minute+':'+second; },
format(時間戳)
8.封裝時間日期格式的轉化
timeStamp:時間戳,
type :根據本身的須要設置格式: Y-M-D Y-M-D H 等等
auto :爲false是轉化格式,爲true是輸入以前到今天的此時時間
formatDate(timeStamp, type = 'Y-M-D H:I:S', auto = true) { let time = (timeStamp + '').length === 10 ? new Date(parseInt(timeStamp) * 1000) : new Date(parseInt(timeStamp)); let _year = time.getFullYear(); let _month = (time.getMonth() + 1) < 10 ? '0' + (time.getMonth() + 1) : (time.getMonth() + 1); let _date = time.getDate() < 10 ? '0' + time.getDate() : time.getDate(); let _hours = time.getHours() < 10 ? '0' + time.getHours() : time.getHours(); let _minutes = time.getMinutes() < 10 ? '0' + time.getMinutes() : time.getMinutes(); let _secconds = time.getSeconds() < 10 ? '0' + time.getSeconds() : time.getSeconds(); let formatTime = ''; let distinctTime = new Date().getTime() - time.getTime(); if (auto) { if (distinctTime <= (1 * 60 * 1000)) { // console.log('一分鐘之內,以秒數計算');
let _s = Math.floor((distinctTime / 1000) % 60); formatTime = _s + '秒前'; } else if (distinctTime <= (1 * 3600 * 1000)) { // console.log('一小時之內,以分鐘計算');
let _m = Math.floor((distinctTime / (60 * 1000)) % 60); formatTime = _m + '分鐘前'; } else if (distinctTime <= (24 * 3600 * 1000)) { // console.log('一天之內,以小時計算');
let _h = Math.floor((distinctTime / (60 * 60 * 1000)) % 24); formatTime = _h + '小時前'; } else if (distinctTime <= (30 * 24 * 3600 * 1000)) { let _d = Math.floor((distinctTime / (24 * 60 * 60 * 1000)) % 30); formatTime = _d + '天前'; // console.log('30天之內,以天數計算');
} else { // 30天之外只顯示年月日
formatTime = _year + '-' + _month + '-' + _date; } } else { switch (type) { case 'Y-M-D H:I:S': formatTime = _year + '-' + _month + '-' + _date + ' ' + _hours + ':' + _minutes + ':' + _secconds; break; case 'Y-M-D H:I:S zh': formatTime = _year + '年' + _month + '月' + _date + '日 ' + _hours + ':' + _minutes + ':' + _secconds; break; case 'Y-M-D H:I': formatTime = _year + '-' + _month + '-' + _date + ' ' + _hours + ':' + _minutes; break; case 'Y-M-D H': formatTime = _year + '-' + _month + '-' + _date + ' ' + _hours; break; case 'Y-M-D': formatTime = _year + '-' + _month + '-' + _date; break; case 'Y-M-D zh': formatTime = _year + '年' + _month + '月' + _date + '日'; break; case 'Y-M': formatTime = _year + '-' + _month; break; case 'Y': formatTime = _year; break; case 'M': formatTime = _month; break; case 'D': formatTime = _date; break; case 'H': formatTime = _hours; break; case 'I': formatTime = _minutes; break; case 'S': formatTime = _secconds; break; default: formatTime = _year + '-' + _month + '-' + _date + ' ' + _hours + ':' + _minutes + ':' + _secconds; break; } } // 返回格式化的日期字符串
return formatTime; },
以上的內容是本身通過驗證,若有問題你們能夠能夠留言
參考網址:https://blog.csdn.net/qq_39759115/article/details/78893853,https://blog.csdn.net/qq_39759115/article/details/78893853