function formatDate(date, format) {
if (!date) return;
if (!format) format = "yyyy-MM-dd";
switch(typeof date) {
case "string":
date = new Date(date.replace(/-/, "/"));
break;
case "number":
date = new Date(date);
break;
}
if (!date instanceof Date) return;
var dict = {
"yyyy": date.getFullYear(),
"M": date.getMonth() + 1,
"d": date.getDate(),
"H": date.getHours(),
"m": date.getMinutes(),
"s": date.getSeconds(),
"MM": ("" + (date.getMonth() + 101)).substr(1),
"dd": ("" + (date.getDate() + 100)).substr(1),
"HH": ("" + (date.getHours() + 100)).substr(1),
"mm": ("" + (date.getMinutes() + 100)).substr(1),
"ss": ("" + (date.getSeconds() + 100)).substr(1)
};
return format.replace(/(yyyy|MM?|dd?|HH?|ss?|mm?)/g, function() {
return dict[arguments[0]];
});
}
$(function(){
alert(formatDate("2019-08-07 10:59:00", "HH:mm:ss"));
alert(formatDate("2019-08-07 10:59:00", "yyyy-MM-dd HH:mm:ss"));
});
//字符串转日期格式,strDate要转为日期格式的字符串
function getDate(strDate) {
var st = strDate;
var a = st.split(" "); //这个根据你的字符串决定,如果中间为T则改T
var b = a[0].split("-");
var c = a[1].split(":");
var date = new Date(b[0], b[1], b[2], c[0], c[1], c[2]);
return date;
}
**
//上面所说的是js 下面这是html中的fmt标签
**
1.先引入标签库
使用fmt函数需在jsp中引入
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
2.如果时间是时间戳或者是Data的形式的话
<fmt:formatDate value="${requireInfoBean.releaseTime}" pattern="yyyy-MM-dd"/>
3.如果时间是String类型的话 要先将String解析为Date 然后再格式化Date
<fmt:parseDate value="${requireInfoBean.releaseTime}" var="releaseTime" pattern="yyyy-MM-dd"/>
<fmt:formatDate value="${releaseTime}" pattern="yyyy-MM-dd"/>
调用的格式标签
调用格式化标签:
1、显示星期几:
<fmt:formatDate value="${date}" pattern="E"/>
2、显示年月日 时分秒:
<fmt:formatDate value="${date}" pattern="yyyy-MM-dd HH:mm:ss"/>
补充:如果用String格式的时间去格式化时间的话会报错 “因为时间是string类型,不能转换为date格式”