JavaScript 时间与Unix时间戳互相转换,指定时间转换或获取当前时间

- 日理万妓 2022-05-31 01:52 503阅读 0赞

工作上用到这个还挺多的,做个简单的随笔,以后查询的时候比较方便:

一般JS获取的时间戳默认是13位数字,在个人的工作中,PHP后台只需要精确到秒就行,看各位亲的需要了,

代码注释里尽量写的比较清楚了 <( ̄︶ ̄)↗[GO!]

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>时间与时间戳互相转换</title>
  6. </head>
  7. <body>
  8. <script>
  9. //---------时间转换时间戳
  10. //1、转换指定的时间
  11. //声明一个正常页面上显示的时间:
  12. let data1="2018-02-16 12:11:11";
  13. //返回的是13位毫秒的数值
  14. let time1=new Date(Date.parse(data1.replace(/-/g, "/"))).getTime();
  15. //不过一般后台传输时只需要精确到秒就可以了,再除以1000即可
  16. document.write("时间转换时间戳 : <br/> time1 : "+time1/1000 +" <br/> ");
  17. //2、转换当前时间:
  18. let data2=new Date();
  19. let time2=Number(data2); //精确到毫秒
  20. let time3=Date.parse(data2); //虽然也是到毫秒,不过毫秒数并不准确,以000显示
  21. let time4= +data2; //精确到毫秒
  22. document.write("time2: "+time2+" <br/> time3: "+time3+" <br/> time4: "+time4 +" <br/> ");
  23. //---------时间戳转换页面显示的时间格式
  24. //括号里填写指定的时间戳 不填默认当前的时间戳
  25. let data3 = new Date(1518754271 * 1000); //精确到毫秒的就不用 *1000 了
  26. let y=data3.getFullYear(),
  27. month=data3.getMonth() + 1,
  28. m=month<10 ? "0"+month : month,
  29. d=(data3.getDate()<10) ? "0"+data3.getDate() : data3.getDate(),
  30. h=(data3.getHours()<10) ? "0"+data3.getHours() : data3.getHours(),
  31. mi=(data3.getMinutes()<10) ? "0"+data3.getMinutes() : data3.getMinutes(),
  32. s=(data3.getSeconds()<10) ? "0"+data3.getSeconds() : data3.getSeconds();
  33. sendDate=y + "-" +m + "-" +d + " " +h + ":" +mi + ":" +s;
  34. document.write(" <br/> 时间转换时间戳 : <br/> sendDate: "+sendDate);
  35. </script>
  36. </body>
  37. </ht
  38. ml>

(不支持ECMAScript 6 语法 把let 换成 var 就行,)

显示数据:
这里写图片描述


ps: 复制用毫秒数:

一小时:3600000

一天:86400000

发表评论

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

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

相关阅读