在JS中,我们经常遇到一个问题——时间格式的处理与转化,一般而言,我们使用的方法大致都是new Date(xxxx);这样便可以将之前是字符串形式的时间转化为Date对象,然后通过getFullYear()等函数挨个获取年月日的值,并进行字符串拼接,得到我们想要的格式。然而!!!new Date('yyyy-MM-dd HH:mm:ss') 不是所有的浏览器都支持。
这不是说这种方法不能用,而是要做好兼容,实际上,new Date()支持的浏览器兼容格式大致有以下几种:
1 new Date(2011, 01, 07); // yyyy, mm-1, dd
2 new Date(2011, 01, 07, 11, 05, 00); // yyyy, mm-1, dd, hh, mm, ss
3 new Date("02/07/2011"); // "mm/dd/yyyy"
4 new Date("02/07/2011 11:05:00"); // "mm/dd/yyyy hh:mm:ss"
5 new Date(1297076700000); // milliseconds
6 new Date("Mon Feb 07 2011 11:05:00 GMT"); // ""Day Mon dd yyyy hh:mm:ss GMT/UTC
而我们在JS中处理的时间一般都是String对象——“yyyy-MM-ddTHH:mm:ss”,所以也可以使用字符串截取的方式:time.replace("T",":").replace(/:/g,"-").split("-");详情如下:
var time=”2018-05-08T14:23:47”;
var timearr= time.replace("T",":").replace(/\:/g,"-").split("-");
var newtime= timearr[0]+”-”+ timearr[1]+”-”+ timearr[2]+” ”+ timearr[3]+”:”+ timearr[4]+”:”+ timearr[5];//newtime的值为“2018-05-08 14:23:47”
本文作者:杨昊
<上一篇 | 目录 | 下一篇> |
---|