JS?Date時(shí)間格式化的方法
JS Date時(shí)間格式化
1.1日期的格式化
1.1.1方法一(格式,日期))
// 入?yún)?fmt-格式 date-日期
function dateFormat(fmt, date) {
let ret;
const opt = {
"Y+": date.getFullYear().toString(), // 年
"m+": (date.getMonth() + 1).toString(), // 月
"d+": date.getDate().toString(), // 日
"H+": date.getHours().toString(), // 時(shí)
"M+": date.getMinutes().toString(), // 分
"S+": date.getSeconds().toString() // 秒
// 有其他格式化字符需求可以繼續(xù)添加,必須轉(zhuǎn)化成字符串
};
for (let k in opt) {
ret = new RegExp("(" + k + ")").exec(fmt);
if (ret) {
fmt = fmt.replace(ret[1], (ret[1].length == 1) ? (opt[k]) : (opt[k].padStart(ret[1].length, "0")))
};
};
return fmt;
}舉個(gè)例子:
let date = new Date()
dateFormat("YYYY-mm-dd HH:MM:SS", date)
console.log(dateFormat("YYYY-mm-dd HH:MM", date));
輸出: 2019-06-06 19:45:351.1.2方法二(當(dāng)前日期)
// 入?yún)?fmt-格式
Date.prototype.format = function(fmt){
var o = {
"M+" : this.getMonth()+1, //月份
"d+" : this.getDate(), //日
"h+" : this.getHours(), //小時(shí)
"m+" : this.getMinutes(), //分
"s+" : this.getSeconds(), //秒
"q+" : Math.floor((this.getMonth()+3)/3), //季度
"S" : this.getMilliseconds() //毫秒
};
if(/(y+)/.test(fmt)){
fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));
}
for(var k in o){
if(new RegExp("("+ k +")").test(fmt)){
fmt = fmt.replace(
RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));
}
}
return fmt;
}舉個(gè)例子:
var now = new Date();
var nowStr = now.format("yyyy-MM-dd hh:mm:ss");
//2021-06-03 19:17:35
console.log(nowStr);
//2021年06月03日
console.log(new Date().format("yyyy年MM月dd日"));
var nowStr = now.format("yyyy-MM-dd hh:mm:ss");
//2021-06-03 19:17:35
console.log(nowStr);//
//2021年06月03日19小時(shí)17分35秒
console.log(new Date().format("yyyy年MM月dd日hh小時(shí)mm分ss秒"));
//輸出:
2021-06-03 19:17:35
2021年06月03日
2021-06-03 19:17:35
2021年06月03日19小時(shí)17分35秒推薦時(shí)間插件庫:moment.js
Js Date日期格式和字符串的相互轉(zhuǎn)化
// 日期格式化
Date.prototype.format = function(fmt) {
var o = {
"M+" : this.getMonth()+1, //月份
"d+" : this.getDate(), //日
"h+" : this.getHours(), //小時(shí)
"m+" : this.getMinutes(), //分
"s+" : this.getSeconds(), //秒
"q+" : Math.floor((this.getMonth()+3)/3), //季度
"S" : this.getMilliseconds() //毫秒
};
if(/(y+)/.test(fmt)) {
fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));
}
for(var k in o) {
if(new RegExp("("+ k +")").test(fmt)){
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));
}
}
return fmt;
}
let time = new Date().format("yyyy-MM-dd hh:mm:ss");到此這篇關(guān)于JS Date時(shí)間格式化的文章就介紹到這了,更多相關(guān)JS Date時(shí)間格式化內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
解決layer 關(guān)閉當(dāng)前彈窗 關(guān)閉遮罩層 input值獲取不到的問題
今天小編就為大家分享一篇解決layer 關(guān)閉當(dāng)前彈窗 關(guān)閉遮罩層 input值獲取不到的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-09-09
javascript中一些數(shù)組常用的API總結(jié)
Js中數(shù)組是一個(gè)重要的數(shù)據(jù)結(jié)構(gòu),它相比于字符串有更多的方法,本篇文章總結(jié)了一些數(shù)組中常用的API,我們把它們分成兩類,一類是會(huì)改變?cè)紨?shù)組,一類是不會(huì)改變?cè)紨?shù)組,感興趣的小伙伴可以學(xué)習(xí)一下2023-09-09
避免在前端項(xiàng)目中出現(xiàn)重復(fù)的第三方依賴包的檢測(cè)方法
在現(xiàn)代前端開發(fā)中,重復(fù)的第三方依賴包(Duplicate Dependencies)是導(dǎo)致項(xiàng)目體積膨脹、加載速度變慢、構(gòu)建時(shí)間延長(zhǎng)的常見問題,尤其在使用模塊打包工具時(shí),所以本文給大家介紹了避免在前端項(xiàng)目中出現(xiàn)重復(fù)的第三方依賴包的檢測(cè)方法,需要的朋友可以參考下2025-06-06
微信小程序地圖繪制線段并且測(cè)量(實(shí)例代碼)
這篇文章主要介紹了微信小程序地圖繪制線段并且測(cè)量,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-01-01
JS實(shí)現(xiàn)拖動(dòng)滾動(dòng)條評(píng)分的效果代碼分享
本文給大家基于js實(shí)現(xiàn)拖動(dòng)滾動(dòng)條評(píng)分效果,在項(xiàng)目開發(fā)中經(jīng)??梢杂玫降模蠹铱梢愿有枰m當(dāng)?shù)奶砑有薷?,?duì)js評(píng)分效果感興趣的朋友一起看看吧2016-09-09
JS實(shí)現(xiàn)多物體運(yùn)動(dòng)
這篇文章主要為大家詳細(xì)介紹了JS實(shí)現(xiàn)多物體運(yùn)動(dòng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-05-05
JS快速實(shí)現(xiàn)移動(dòng)端拼圖游戲
最近開發(fā)一個(gè)有關(guān)手機(jī)端拼圖游戲,是基于js實(shí)現(xiàn)的。今天小編抽時(shí)間把具體實(shí)現(xiàn)代碼分享到腳本之家平臺(tái)供大家參考,對(duì)js移動(dòng)端拼圖游戲感興趣的朋友參考下吧2016-09-09
解決使用layui的時(shí)候form表單中的select等不能渲染的問題
今天小編就為大家分享一篇解決使用layui的時(shí)候form表單中的select等不能渲染的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-09-09

