Javascript里面的时间处理:将时间戳或时间对象转成字符串格式


  问题背景:想把一个时间直接转成字符串格式

  通过查api发现有个toLocaleString(),根据本地时间格式,把 Date 对象转换为字符串

new Date().toLocaleString(); //"2018/5/31 下午1:43:06"

  但是默认是12小时制,会带这种上午下午,所以肯定不需要,继续查,发现可以配置

var ss = new Date().getTime() + 3600000; (new Date(ss).toLocaleString('chinese',{hour12:false})).replace(/\//g,'-'); //"2018-5-31 14:40:32"

  这样就转成我需要的格式啦。

  JS的日期对象方法,可以看下:JavaScript Date 对象

1、js获取当前时间戳的方法

var timestamp1 = Date.parse(new Date()); var timestamp2 = (new Date()).valueOf(); var timestamp3 = new Date().getTime(); console.log(timestamp1,timestamp2,timestamp3) //VM140:4 1527745698000 1527745698616 1527745698616

  第一种:获取的时间戳是精度到秒级,把毫秒改成000显示;

  第二种和第三种是精度到毫秒级,获取了当前毫秒的时间戳。

var newDay1 = new Date(); var newDay2 = Date.parse(new Date()); var newDay3 = +new Date(); console.log(Number(newDay1),newDay2,newDay3) //VM160:4 1527745994726 1527745994000 1527745994726

  第一种和第三种,使用数字对象的方法返回的时间戳,精确到了毫秒,

  而第二种日期对象的Date.parse()方法只精确到了秒,后三位都是用的0填充的,所以个人推荐第一种

2、将时间戳转换成Date对象

new Date(1527745994726) //Thu May 31 2018 13:53:14 GMT+0800 (中国标准时间)

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM