日期时间转换秒数或者秒数转换日期和时间

朴灿烈づ我的快乐病毒、 2022-10-11 01:11 372阅读 0赞

日期时间转换秒数或者秒数转换日期和时间,在前端页面需要的是日期和时间,而后端保存一般需要秒数,在比较时间前后时,也需要秒数的比较,以下是参考代码:

  1. // 把秒数转换为日期和时间
  2. function changeTime(time){
  3. var date = new Date(time*1000);
  4. var hour = date.getHours();
  5. var minute = date.getMinutes();
  6. var second = date.getSeconds();
  7. return date.toLocaleDateString().replace(/\//g,'-')+' '+hour+':'+minute+':'+second;
  8. }
  9. function formatTime(time, type, format){
  10. if(!time) return '';
  11. if(type == 'seconds') time = parseInt(time+'000');
  12. if(type == 'milliseconds') time = parseInt(time);
  13. var DateTime = new Date(time);
  14. var year = DateTime.getFullYear();
  15. var month = prevZero(DateTime.getMonth()+1, 2);
  16. var date = prevZero(DateTime.getDate(), 2);
  17. var hours = prevZero(DateTime.getHours(), 2);
  18. var minutes = prevZero(DateTime.getMinutes(), 2);
  19. var seconds = prevZero(DateTime.getSeconds(), 2);
  20. time = format.replace(/y/g, year);
  21. time = time.replace(/m/g, month);
  22. time = time.replace(/d/g, date);
  23. time = time.replace(/h/g, hours);
  24. time = time.replace(/i/g, minutes);
  25. time = time.replace(/s/g, seconds);
  26. return time;
  27. }
  28. // 前导0
  29. function prevZero(num, pos){
  30. num = num+'';
  31. var len = pos - num.length;
  32. for(var i=0; i<len; i++){
  33. num = '0'+num;
  34. }
  35. return num;
  36. }
  37. // 把日期和时间转换为秒数
  38. function changeDate(date){
  39. var time = new Date(date.replace(/-/g, '/'))
  40. time = Math.ceil(time.getTime() / 1000)
  41. return time;
  42. }
  43. // 获取时间差
  44. function hasTime(time1, time2, type, format){
  45. if(!time1 || !time2) return '';
  46. if(type == 'seconds'){
  47. time1 = parseInt(time1+'000');
  48. time2 = parseInt(time2+'000');
  49. }
  50. if(type == 'milliseconds'){
  51. time1 = parseInt(time1);
  52. time2 = parseInt(time2);
  53. }
  54. var time = time1 - time2;
  55. var year = parseInt(time/(1000*60*60*24*365));
  56. time = time - year*(1000*60*60*24*365);
  57. var month = parseInt(time/(1000*60*60*24*30));
  58. time = time - month*(1000*60*60*24*30);
  59. var date = parseInt(time/(1000*60*60*24));
  60. time = time - date*(1000*60*60*24);
  61. var hours = parseInt(time/(1000*60*60));
  62. time = time - hours*(1000*60*60);
  63. var minutes = parseInt(time/(1000*60));
  64. time = time - minutes*(1000*60);
  65. var seconds = parseInt(time/1000);
  66. time = format.replace(/y/g, year);
  67. time = time.replace(/m/g, month);
  68. time = time.replace(/d/g, date);
  69. time = time.replace(/h/g, hours);
  70. time = time.replace(/i/g, minutes);
  71. time = time.replace(/s/g, seconds);
  72. return time;
  73. }

发表评论

表情:
评论列表 (有 0 条评论,372人围观)

还没有评论,来说两句吧...

相关阅读

    相关 时间转换

    总秒数与时间的转换 wangxl@20180719 概述 单片机上为节使空间经常使用4个字节来存储时间的总秒数,上位机需要相应的处理解析秒数与时间的转换。