JS关于Date函数的格式化输出
// 对Date的扩展,将 Date 转化为指定格式的String // 月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符, // 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字) // 例子: // (new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423 // (new Date()).Format("yyyy-M-d h:m:s.S") ==> 2006-7-2 8:9:4.18 Date.prototype.Format = function(fmt){ var o = { "M+": this.getMonth()+1, "d+": this.getDate(), "H+": this.getHours(), "m+": this.getMinutes(), "s+": this.getSeconds(), "S+": this.getMilliseconds() }; //因位date.getFullYear()出来的结果是number类型的,所以为了让结果变成字符串型,下面有两种方法: if(/(y+)/.test(fmt)){ //第一种:利用字符串连接符“+”给date.getFullYear()+"",加一个空字符串便可以将number类型转换成字符串。 fmt=fmt.replace(RegExp.$1,(this.getFullYear()+"").substr(4-RegExp.$1.length)); } for(var k in o){ if (new RegExp("(" + k +")").test(fmt)){ //第二种:使用String()类型进行强制数据类型转换String(date.getFullYear()),这种更容易理解。 fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(String(o[k]).length))); } } return fmt; }
window.onload=function(){ var time1 = new Date().Format("yyyy-MM-dd"); var time2 = new Date().Format("yyyy-MM-dd HH:mm:ss"); alert(time1); alert(time2); };
格式化时间
// 格式化日期函数 function formatDate(v) { if (/^(-)?\d{1,10}$/.test(v)) { v = v * 1000; } else if (/^(-)?\d{1,13}$/.test(v)) { v = v * 1; } var dateObj = new Date(v); var month = dateObj.getMonth() + 1; var day = dateObj.getDate(); var hours = dateObj.getHours(); var minutes = dateObj.getMinutes(); var seconds = dateObj.getSeconds(); if(month<10){ month = "0" + month; } if(day<10){ day = "0" + day; } if(hours<10){ hours = "0" + hours; } if(minutes<10){ minutes = "0" + minutes; } if(seconds<10){ seconds = "0" + seconds; } var UnixTimeToDate = dateObj.getFullYear() + '-' + month + '-' +day + ' ' + hours + ':' + minutes + ':' + seconds; return UnixTimeToDate; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通