js时间戳与日期格式之间的互转
将时间戳转换成日期格式:
// 简单的一句代码 var date = new Date(时间戳); //获取一个时间对象 注意:如果是uinx时间戳记得乘于1000。比如php函数time()获得的时间戳就要乘于1000 /*----------下面是获取时间日期的方法,需要什么样的格式自己拼接起来就好了----------*/ date.getFullYear();//获取完整的年份(4位,1970) date.getMonth();//获取月份(0-11,0代表1月,用的时候记得加上1) date.getDate();//获取日(1-31) date.getTime();//获取时间(从1970.1.1开始的毫秒数) date.getHours();//获取小时数(0-23) date.getMinutes();//获取分钟数(0-59) date.getSeconds();//获取秒数(0-59) //更多好用的方法可以到这查找 -> 点击这里 // 例子,比如需要这样的格式:yyyy-MM-dd hh:mm:ss var date = new Date(1398250549490); Y = date.getFullYear() + '-'; M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-'; D = date.getDate() + ' '; h = date.getHours() + ':'; m = date.getMinutes() + ':'; s = date.getSeconds(); console.log(Y+M+D+h+m+s); //呀麻碟 //输出结果:2014-04-23 18:55:49
将日期格式转换成时间戳:
// 也很简单 var strtime = '2014-04-23 18:55:49:123'; var date = new Date(strtime); //传入一个时间格式,如果不传入就是获取现在的时间了,这样做不兼容火狐。 // 可以这样做 var arr = strtime.replace(/ |:/g, '-').split('-'); date = new Date(Date.UTC(arr[1], arr[2], arr[3], arr[4], arr[5])); // 有三种方式获取 time1 = date.getTime(); time2 = date.valueOf(); time3 = Date.parse(date); // 三种获取的区别 第一、第二种:会精确到毫秒 第三种:只能精确到秒,毫秒将用0来代替 // 比如上面代码输出的结果(一眼就能看出区别): // 1398250549123 // 1398250549123 // 1398250549000 注意:获取到的时间戳除于1000就可以获得unix的时间戳了,在传值给PHP时用得