开发的时候碰到这么个需求,传到页面的时间值是 Long 格式,但是页面需要显示出来的格式需要是 yyyy-MM-dd 的 Date 时间,本来觉得像服务器端一样直接用 SimpleDateFormat 就可以了,但是页面提示没有 js 这个类,用 import="java.text.SimpleDateFormat" 也不行,好吧上网去找了下 js 转换 Long 格式时间的方法,有是有不过看起来有点麻烦,自己琢磨了下 API 取巧地写了个脚本,发出来大家探讨下( 好像扯太多了( ̄▽ ̄) )
本方法现在只支持将那些由 yyyy-MM-dd 格式转换得到的 Long 格式时间再次转回 yyyy-MM-dd 格式,主要是利用 javascript 可以直接调用的 Date 类以及其中的 getYear()、getMonth()、getDate() 方法,由于这后面两个方法所得的月份和日期不满足要求,所以本方法再封包了一次。
总体来功能比较简单,权当抛砖引玉了,话不多说,上源码
<script>
/*
时间格式化工具
把Long类型的yyyy-MM-dd日期还原yyyy-MM-dd格式日期
*/
function dateFormatUtil(longTypeDate){
var dateTypeDate = "";
var date = new Date();
date.setTime(longTypeDate);
dateTypeDate += date.getFullYear(); //年
dateTypeDate += "-" + getMonth(date); //月
dateTypeDate += "-" + getDay(date); //日
return dateTypeDate;
}
//返回 01-12 的月份值
function getMonth(date){
var month = "";
month = date.getMonth() + 1; //getMonth()得到的月份是0-11
if(month<10){
month = "0" + month;
}
return month;
}
//返回01-30的日期
function getDay(date){
var day = "";
day = date.getDate();
if(day<10){
day = "0" + day;
}
return day;
}
</script>