A-A+

js中模仿php strtotime()与date()函数

2016年02月16日 前端设计 暂无评论 阅读 7 views 次

在js中没有像php中strtotime()与date()函数,可直接转换时间戳,下面我们来自定一个函数来实现js中具体有时间戳转换的功能,代码如下:

  1. function datetime_to_unix(datetime){   
  2.     var tmp_datetime = datetime.replace(/:/g,'-');   
  3.     tmp_datetime = tmp_datetime.replace(/ /g,'-');   
  4.     var arr = tmp_datetime.split("-");   
  5.     var now = new Date(Date.UTC(arr[0],arr[1]-1,arr[2],arr[3]-8,arr[4],arr[5]));   
  6.     return parseInt(now.getTime()/1000);   
  7. }   
  8.     
  9. function unix_to_datetime(unix) {   
  10.     var now = new Date(parseInt(unix) * 1000);   
  11.     return now.toLocaleString().replace(/年|月/g, "-").replace(/日/g, " ");   
  12. }   
  13.     
  14. var datetime = '2012-11-16 10:36:50';   
  15. var unix = datetime_to_unix(datetime);   
  16. document.write(datetime+' 转换后的时间戳为: '+unix+'   
  17. ');   
  18.     
  19. var unix = 1353033300;   
  20. var datetime = unix_to_datetime(unix);   
  21. document.write(unix+' 转换后的日期为: '+datetime);  

如果想弹出:2010-10-20 10:00:00这个格式的也好办,代码如下:

  1. <script>  
  2. function getLocalTime(nS) {  
  3.     return new Date(parseInt(nS) * 1000).toLocaleString().replace(/年|月/g, "-").replace(/日/g, " ");   
  4. }  
  5. alert(getLocalTime(1177824835));  
  6. </script>  

完整实例,代码如下:

  1. <script type="text/javascript">  
  2. var day1 = parseInt(new Date().valueOf()/1000);  
  3. var day2 = new Date(day1 * 1000);  
  4. function getLocalTime(nS) {    
  5.     return new Date(parseInt(nS) * 1000).toLocaleString().replace(/:d{1,2}$/,' ');    
  6. }  
  7. /* 同上面函数 */  
  8. function getLocalTimes(nS) {    
  9.     return new Date(parseInt(nS) * 1000).toLocaleString().substr(0,17);  
  10. }   
  11. function getLocalFormatTime(nS) {    
  12.  return new Date(parseInt(nS) * 1000).toLocaleString().replace(/年|月/g, "-").replace(/日/g, " ");     
  13. }  
  14.       
  15. document.getElementById("btn1").onclick = function(){  
  16.  alert(day1);  
  17. }  
  18. document.getElementById("btn2").onclick = function(){  
  19.  alert(day2.toLocaleString());  
  20. }  
  21. document.getElementById("btn3").onclick = function(){  
  22.  alert( getLocalTime(day1) );  
  23. }  
  24. document.getElementById("btn4").onclick = function(){  
  25.  alert( getLocalFormatTime(day1) );  
  26. }  
  27. document.getElementById("btn5").onclick = function(){  
  28.  alert(day2.getFullYear()+"-"+(day2.getMonth()+1)+"-"+day2.getDate()+" "+day2.getHours()+":"+day2.getMinutes()+":"+day2.getSeconds());  
  29. }  
  30. </script>  
标签:

给我留言