一、纯js
var dateString = "Tue Jan 01 2013 00:00:00 GMT+0800 (中国标准时间)";
var dateObj = new Date(dateString);
var year = dateObj.getFullYear();
var month = ("0" + (dateObj.getMonth() + 1)).slice(-2);
var day = ("0" + dateObj.getDate()).slice(-2);
var hours = ("0" + dateObj.getHours()).slice(-2);
var minutes = ("0" + dateObj.getMinutes()).slice(-2);
var seconds = ("0" + dateObj.getSeconds()).slice(-2);
var formattedDate = year + "-" + month + "-" + day + " " + hours + ":" + minutes + ":" + seconds;
console.log(formattedDate);
二、使用moment
import moment from 'moment'
moment.js
是一个广泛使用的 JavaScript 日期处理库,它可以用于解析、验证、操作和显示日期和时间
moment(new Date()).format('YYYY-MM-DD')
moment(data.start_time).format('YYYY-MM-DD')
使用示例:
// 解析日期时间
let date = moment("2023-11-09T12:00:00");
// 格式化日期时间
console.log(date.format("YYYY-MM-DD HH:mm:ss")); // 输出: 2023-11-09 12:00:00
// 加一天
date.add(1, 'days');
console.log(date.format("YYYY-MM-DD HH:mm:ss")); // 输出: 2023-11-10 12:00:00
// 减去2个小时
date.subtract(2, 'hours');
console.log(date.format("YYYY-MM-DD HH:mm:ss")); // 输出: 2023-11-10 10:00:00
// 显示相对时间
let fromNow = moment("2023-11-08").fromNow();
console.log(fromNow); // 输出: a day ago
// 转换时区
let newYorkTime = moment.tz("2023-11-09 12:00", "America/New_York");
console.log(newYorkTime.format()); // 输出: 2023-11-09T12:00:00-05:00