jquery格式化时间
jQuery 格式化时间的方法
在 jQuery 中格式化时间通常需要结合 JavaScript 的日期处理功能。以下是几种常见的实现方式:
使用原生 JavaScript 的 Date 对象
通过 JavaScript 的 Date 对象获取时间信息,并拼接成需要的格式:

function formatTime(date) {
var year = date.getFullYear();
var month = ('0' + (date.getMonth() + 1)).slice(-2);
var day = ('0' + date.getDate()).slice(-2);
var hours = ('0' + date.getHours()).slice(-2);
var minutes = ('0' + date.getMinutes()).slice(-2);
var seconds = ('0' + date.getSeconds()).slice(-2);
return year + '-' + month + '-' + day + ' ' + hours + ':' + minutes + ':' + seconds;
}
var currentTime = new Date();
var formattedTime = formatTime(currentTime);
console.log(formattedTime); // 输出类似 "2023-10-05 14:30:45"
使用第三方库 Moment.js
Moment.js 是一个流行的日期处理库,可以简化时间格式化操作:

// 引入 Moment.js 后使用
var formattedTime = moment().format('YYYY-MM-DD HH:mm:ss');
console.log(formattedTime); // 输出当前时间的格式化字符串
使用 jQuery 扩展方法
可以扩展 jQuery 的原型方法,方便在项目中使用:
$.fn.formatTime = function(format) {
if (!format) format = 'YYYY-MM-DD HH:mm:ss';
return moment(this.text()).format(format);
};
// 使用示例
$('#timeElement').formatTime(); // 格式化元素中的时间文本
自定义轻量级格式化函数
如果不想引入额外库,可以自定义一个轻量级的格式化函数:
function formatDate(date, format) {
var map = {
'YYYY': date.getFullYear(),
'MM': ('0' + (date.getMonth() + 1)).slice(-2),
'DD': ('0' + date.getDate()).slice(-2),
'HH': ('0' + date.getHours()).slice(-2),
'mm': ('0' + date.getMinutes()).slice(-2),
'ss': ('0' + date.getSeconds()).slice(-2)
};
return format.replace(/YYYY|MM|DD|HH|mm|ss/g, function(matched) {
return map[matched];
});
}
var now = new Date();
console.log(formatDate(now, 'YYYY-MM-DD HH:mm:ss')); // 输出格式化时间
以上方法可以根据项目需求选择使用。原生 JavaScript 方法适合简单场景,Moment.js 适合复杂日期处理,自定义扩展方法则提供了更好的代码复用性。






