前端处理后端对象类型时间格式通用方法封装,前端JS处理JSON 序列化后的格式 java.time 包中的日期时间类
后端的接口返回数据层级
它是由 Java 的
java.time
包(如LocalDateTime
或ZonedDateTime
)中的某个类通过 JSON 序列化工具(如 Jackson 或 Gson)转换而来的。Java 默认时间类(
java.time
包)这个结构对应的是 Java 8 引入的现代日期时间 API(
java.time
),比如:
LocalDateTime
(无时区信息)
ZonedDateTime
(带时区信息)
处理方法封装
export function zrjparseCustomDate(timeObj: any) {// 检查空值if (!timeObj || typeof timeObj !== 'object' || Object.keys(timeObj).length === 0) {return nullreturn moment(); // 返回当前时间,或返回 null/抛出错误(根据业务需求)}// 确保必要字段存在(简单校验)const { year, monthValue, dayOfMonth, hour = 0, minute = 0, second = 0 } = timeObj;if (year === undefined || monthValue === undefined || dayOfMonth === undefined) {throw new Error("Invalid date object: missing required fields (year, monthValue, dayOfMonth)");}// 拼接 ISO 字符串const isoString = `${year}-${String(monthValue).padStart(2, '0')}-${String(dayOfMonth).padStart(2, '0')}T${String(hour).padStart(2, '0')}:${String(minute).padStart(2, '0')}:${String(second).padStart(2, '0')}`;return moment(isoString);
}
使用
const parsedDate = parseCustomDate(time);
const getTime = parsedDate ? parsedDate.format("YYYY-MM-DD HH:mm:ss") : ""