JavaScript 指定格式化日期的方式
1、使用let 和 const 的方式
function formatDate(date, format) { const map = { "M": date.getMonth() + 1, // 月份 "d": date.getDate(), // 日 "h": date.getHours(), // 小时 "m": date.getMinutes(), // 分 "s": date.getSeconds(), // 秒 "q": Math.floor((date.getMonth() + 3) / 3), // 季度 "S": date.getMilliseconds() // 毫秒 }; format = format.replace(/([yMdhmsqS])+/g, (all, t) => { let v = map[t]; if (v !== undefined) { if (all.length > 1) { v = "0" + v; v = v.substr(v.length - 2); } return v; } else if (t === "y") { return (date.getFullYear() + "").substr(4 - all.length); } return all; }); return format; }
2、早期 JavaScript 版本(例如 ES5),使用 var 关键字来声明变量的方式
function formatDate(date, format) { var map = { "M": date.getMonth() + 1, // 月份 "d": date.getDate(), // 日 "h": date.getHours(), // 小时 "m": date.getMinutes(), // 分 "s": date.getSeconds(), // 秒 "q": Math.floor((date.getMonth() + 3) / 3), // 季度 "S": date.getMilliseconds() // 毫秒 }; format = format.replace(/([yMdhmsqS])+/g, function(all, t) { var v = map[t]; if (v !== undefined) { if (all.length > 1) { v = "0" + v; v = v.substr(v.length - 2); } return v; } else if (t === "y") { return (date.getFullYear() + "").substr(4 - all.length); } return all; }); return format; }
3、说明和使用示例:
3.1 说明
formatDate()函数接受两个参数:一个日期对象和一个格式字符串。格式字符串中可以包含以下占位符:
- yyyy:四位数的年份
- yy:两位数的年份
- M:月份(不带前导零)
- MM:月份(带前导零)
- d:日期(不带前导零)
- dd:日期(带前导零)
- h:小时(12小时制,不带前导零)
- hh:小时(12小时制,带前导零)
- H:小时(24小时制,不带前导零)
- HH:小时(24小时制,带前导零)
- m:分钟(不带前导零)
- mm:分钟(带前导零)
- s:秒钟(不带前导零)
- ss:秒钟(带前导零)
- q:季度(不带前导零)
- S:毫秒(不带前导零)
- SSS:毫秒(带前导零)
函数将所有占位符替换为相应的日期值,然后返回格式化后的日期字符串。
3.2 示例:
//滔Roy 2023.06.20 const date = new Date(); const format = "yyyy-MM-dd hh:mm:ss"; const formattedDate = formatDate(date, format); console.log(formattedDate);
创建时间:2023.06.20 更新时间:
标签:不带,格式化,format,JavaScript,length,return,日期,date,前导 From: https://www.cnblogs.com/guorongtao/p/17492991.html