js时间戳与日期格式的相互转换
下面总结一下js中时间戳与日期格式的相互转换:
1. 将时间戳转换成日期格式:
| 1 2 3 4 5 6 7 8 9 10 11 12 | functiontimestampToTime(timestamp) {        vardate = newDate(timestamp * 1000);//时间戳为10位需*1000,时间戳为13位的话不需乘1000        varY = date.getFullYear() + '-';        varM = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-';        varD = date.getDate() + ' ';        varh = date.getHours() + ':';        varm = date.getMinutes() + ':';        vars = date.getSeconds();        returnY+M+D+h+m+s;    }    timestampToTime(1403058804);    console.log(timestampToTime(1403058804));//2014-06-18 10:33:24 | 
注意:如果是Unix时间戳记得乘以1000。比如:PHP函数time()获得的时间戳就要乘以1000。
2. 将日期格式转换成时间戳:
| 1 2 3 4 5 6 7 8 | vardate = newDate('2014-04-23 18:55:49:123');    // 有三种方式获取    vartime1 = date.getTime();    vartime2 = date.valueOf();    vartime3 = Date.parse(date);    console.log(time1);//1398250549123    console.log(time2);//1398250549123    console.log(time3);//1398250549000 | 
以上三种获取方式的区别:
第一、第二种:会精确到毫秒
第三种:只能精确到秒,毫秒用000替代
以上三个输出结果可观察其区别
注意:获取到的时间戳除以1000就可获得Unix时间戳,就可传值给后台得到。
1 //参数为时间戳 2 function getdate(times) { 3 var now = new Date(times), 4 y = now.getFullYear(), 5 m = now.getMonth() + 1, 6 d = now.getDate(); 7 return y + "-" + (m < 10 ? "0" + m : m) + "-" + (d < 10 ? "0" + d : d) + " " + now.toTimeString().substr(0, 8); 8 }
1 function time(time = +new Date()) { 2 var date = new Date(time + 8 * 3600 * 1000); // 增加8小时 3 return date.toJSON().substr(0, 19).replace('T', ' '); 4 } 5 time(); // "2018-08-09 18:25:54"
 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号