欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

js日期格式化yyyy-MM-dd問題

 更新時(shí)間:2023年01月21日 09:39:17   作者:sunsineq  
這篇文章主要介紹了js日期格式化yyyy-MM-dd問題,具有很好的參考價(jià)值,希望對大家大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

js日期格式化yyyy-MM-dd

方法一

function formatDate(date) {
console.log(date);
// date = new Date();
date = new Date(Date.parse(date.replace(/-/g, "/"))); //轉(zhuǎn)換成Data();
console.log(date);
var y = date.getFullYear();
console.log(y);
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;
}

方法二

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;
}

方法二調(diào)用:

new Date(addtime).format("yyyy-MM-dd"); ? //addtime這個(gè)是時(shí)間字符

yyyy-MM-dd和YYYY-MM-dd格式化日期的區(qū)別你知道嗎?

這里yyyy-MM-dd對于年份取值取得是當(dāng)天所在的這個(gè)年份

而YYYY-MM-dd它所取的年份是本周所在的這個(gè)年份

這里我們就要注意一個(gè)問題

如果我們所格式化的這個(gè)日期它所在的周是一個(gè)跨年周的話 , 那么這里所取的年份就是第二年的年

接下來我們找一個(gè)case驗(yàn)證一下:

通過查看日歷我們可以看到2021年12月31號它所在的周是一個(gè)跨年周

它這周開始于21年12月26號,結(jié)束于22年1月2號

接下來我們來演示一下

首先看代碼我們分別創(chuàng)建了yyyy和YYYY兩種日期格式化

然后生成了12月31號的這個(gè)日期

然后分別用這兩種格式化對這兩種日期進(jìn)行輸出

出大問題了

通過輸出可以看到YYYY輸出的日期是2022年,yyyy輸出的日期是2021年

這就是它們兩個(gè)的區(qū)別

在平時(shí)的開發(fā)中尤其對于會員啊,投放啊這種日期敏感型的場景,一定避免使用YYYY這種日期敏感型格式,避免造成不必要的線上故障

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論