做电影网站要不要收费太原建站seo
开发需求
在前端中我们通常使用new Date()
函数获取到的日期时间是下面这种样子:Thu Jun 06 2024 17:29:11 GMT+0800 (中国标准时间),我们想要把它转换成常见的指定格式,比如
- 年-月-日 时:分:秒
- 年/月/日 时:分:秒
- 年-月-日
- 年/月/日
所以就封装了这个公共方法,类似于 python 中的时间处理函数 strftime()
。
方法使用
该方法传入两个参数, date (时间)和 format(指定格式化格式)
- date:日期时间,Date()类型,默认是new Date()
- format:指定格式化格式,默认是 YY-MM-DD,即就是年-月-日
返回:返回的结果就是根据当前时间格式化后 年月日 时分秒
formatDate(new Date(), 'YY/MM/DD h:m:s') // 2024/6/6 17:20:41
formatDate(new Date(), 'YY-MM-DD h:m:s') // 2024-6-6 17:20:55
formatDate(new Date(), 'YY/MM/DD') // 2024/6/6
formatDate(new Date(), 'YY-MM-DD') // 2024-6-6
代码实现
/*** @description 格式化日期函数* @param date Date* @param format 'YY-MM-DD'* @returns {string}*/
export const formatDate = (date = new Date(), format = 'YY-MM-DD') => {let year = date.getFullYear();let month = date.getMonth() + 1;let today = date.getDate();let hour = date.getHours()let minute = date.getMinutes()let second = date.getSeconds()let currentTime;switch (format) {case "YY-MM-DD h:m:s":currentTime = `${year}-${month}-${today} ${hour}:${minute}:${second}`;break;case "YY/MM/DD h:m:s":currentTime = `${year}/${month}/${today} ${hour}:${minute}:${second}`break;case "YY/MM/DD":currentTime = `${year}/${month}/${today}`break;case "YY-MM-DD":currentTime = `${year}-${month}-${today}`break;default:currentTime = `${year}/${month}/${today}`break}return currentTime;}
测试
formatDate(new Date(), 'YY/MM/DD h:m:s') // 2024/6/6 17:20:41
formatDate(new Date(), 'YY-MM-DD h:m:s') // 2024-6-6 17:20:55
formatDate(new Date(), 'YY/MM/DD') // 2024/6/6
formatDate(new Date(), 'YY-MM-DD') // 2024-6-6