最近项目里面用到了json的时间戳,我参考了一些别人的代码,成功的写出了自己的东西。
首先,在没有转之前,是这样的,不懂的菜鸟可能会疑惑,这瞄的是什么东西,其实根据在计算机里面的时间,表示的是从1970-1-1 00:00:00de 的偏移量,单位是毫秒,所以看起来一个这么大的数字,其实并不大,那么切入正题,如何格式化成我们想要的时间字符串,说起来,很简单,
function change(time) {
var date = new Date(parseInt(time.replace("/Date(", "").replace(")/",""),10));
var month = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
var currentDate = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
var Hour = date.getHours() < 10 ? "0" + date.getHours() : date.getHours();
var minutes = date.getMinutes() < 10 ? "0" + date.getMinutes() : date.getMinutes();
return date.getFullYear() + "-" + month + "-" + currentDate+" "+Hour+":"+minutes;
}
这儿,Date的构造函数接受一个整形的数据,然后我们把json中的"/Date("和“)/”替换为“”,再将其转换成整形数据,于是乎,我们就可以得到自己想要的数据了,这儿我将其格式化为两位的var month = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;,大家可以根据自己的需要进行格式化,至此,问题得到了解决
效果图: