js日期及格式化

js日期及格式化function dateFormat fmt date let ret const opt Y date getFullYear

大家好,欢迎来到IT知识分享网。

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(), // 时 "M+": date.getMinutes().toString(), // 分 "S+": date.getSeconds().toString() // 秒 // 有其他格式化字符需求可以继续添加,必须转化成字符串 }; 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; }

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:35

Date.prototype.format = function(fmt){ var o = { "M+" : this.getMonth()+1, //月份 "d+" : this.getDate(), //日 "h+" : this.getHours(), //小时 "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; }

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小时17分35秒

console.log(new Date().format(“yyyy年MM月dd日hh小时mm分ss秒”));

//输出:

2021-06-03 19:17:35

2021年06月03日

2021-06-03 19:17:35

2021年06月03日19小时17分35秒

常用api

let date = new Date(); console.log(date.getFullYear()); //当前日期的年 2022 console.log(date.getMonth() + 1); //月份+1 由于月份是0-11计算 所以需要 +1 console.log(date.getDate()); // 日 console.log(date.getDay()); // 星期几 注意:星期日返回的是0 console.log(date.getHours()); // 时 console.log(date.getMinutes()); // 分 console.log(date.getSeconds()); // 秒

toLocaleString(原生方法)

let timer = new Date() console.log(timer.toLocaleString()) // 日期+时间 2024/5/08 23:07:35 console.log(timer.toLocaleDateString()) // 日期 2024/5/08 console.log(timer.toLocaleTimeString()) // 时间 23:10:31 
console.log(time.getFullYear().toString().padStart(4, '0')) // 年 2023 console.log((time.getMonth() + 1).toString().padStart(2, '0')) // 月 05 console.log(time.getDate().toString().padStart(2, '0')) // 日 29 console.log('星期' + (time.getDay() === 0 ? 7 : time.getDay())) // 周 星期1 console.log(time.getHours().toString().padStart(2, '0')) // 时 01 console.log(time.getMinutes().toString().padStart(2, '0')) // 分 19 console.log(time.getSeconds().toString().padStart(2, '0')) // 秒 55
let time = new Date() // 定义格式化封装函数 function formaData(timer) { const year = timer.getFullYear() const month = timer.getMonth() + 1 // 由于月份从0开始,因此需加1 const day = timer.getDate() const hour = timer.getHours() const minute = timer.getMinutes() const second = timer.getSeconds() return `${pad(year, 4)}-${pad(month)}-${pad(day)} ${pad(hour)}:${pad(minute)}:${pad(second)}` } // 定义具体处理标准 // timeEl 传递过来具体的数值:年月日时分秒 // total 字符串总长度 默认值为2 // str 补充元素 默认值为"0" function pad(timeEl, total = 2, str = '0') { return timeEl.toString().padStart(total, str) } // 调用函数 console.log(formaData(time)) // 2023-05-29 00:30:19

第三方库

npm install moment
import moment from 'moment'; Vue.prototype.$moment = moment
// `this.$moment()` 输出当前时间的moment对象 console.log(this.$moment().format('YYYY-MM-DD HH:mm:ss')); // 2023-05-29 00:30:19
let date = new Date(); // 写法一 console.log(date.valueOf()); //现在时间距离1970.1.1的毫秒数 console.log(date.getTime()); // 写法二 let date = +new Date(); console.log(date); //返回当前总的毫秒数 // 写法三 console.log(Date.now()); // H5新增 低版本浏览器打不开

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/94066.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信