js new Date()格式化

本文介绍了JavaScript中自定义日期格式化的实现,包括月份、日期、小时、分钟、秒和毫秒的格式化方法,通过示例代码展示了如何将日期对象转换为指定格式的字符串。
(new Date().Format("yyyy-MM-dd hh:mm:ss.S")
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;
}
在JavaScript中,对使用`new Date()`创建的日期对象进行格式化处理有多种方法: ### 使用JavaScript Moment库 虽然引用中未详细提及该库的使用方式,但Moment.js是一个流行的日期处理库,能方便地对日期进行格式化。示例代码如下: ```javascript const moment = require('moment'); const date = new Date(); const formattedDate = moment(date).format('YYYY-MM-DD HH:mm:ss'); console.log(formattedDate); ``` ### 编写函数实现格式化 可以自定义函数来实现日期的格式化。以下是一个简单的示例: ```javascript function formatDate(date) { const year = date.getFullYear(); const month = String(date.getMonth() + 1).padStart(2, '0'); const day = String(date.getDate()).padStart(2, '0'); const hours = String(date.getHours()).padStart(2, '0'); const minutes = String(date.getMinutes()).padStart(2, '0'); const seconds = String(date.getSeconds()).padStart(2, '0'); return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; } const myDate = new Date(); const formatted = formatDate(myDate); console.log(formatted); ``` ### 为JavaScript Date对象添加格式化方法 可以通过原型链为`Date`对象添加自定义的格式化方法: ```javascript Date.prototype.format = function (format) { const 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(format)) { format = format.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length)); } for (const k in o) { if (new RegExp('(' + k + ')').test(format)) { format = format.replace(RegExp.$1, (RegExp.$1.length === 1) ? (o[k]) : (('00' + o[k]).substr(('' + o[k]).length))); } } return format; }; const dateObj = new Date(); const formattedDateObj = dateObj.format('yyyy-MM-dd hh:mm:ss'); console.log(formattedDateObj); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值