如何将时间戳/时间差转化为具体的时分秒;
当我们获取到一个时间戳时,我们该如何将其转化为具体的时分秒呢?
首先我们应该知道我们获取的时间戳单位是毫秒/ms。
其次我们还应该知道1小时等于60分钟,一分钟等于60秒,一秒等于1000毫秒;
因此我们可以得到:
1小时就等于 hour_ms = 60* 60* 1000(毫秒)
一分钟就等于 min_ms = 60*1000(毫秒)
一秒等于s_s = 1000(毫秒)
ok,接下来进入正题;
首先将得到的时间戳(假设为n)进行如下运算:
将 n / hour_ms 后取整就可以得到有多少个整数的小时;
将 n % hour_ms 后得到 除去小时部分后边剩余的毫秒数
再将 剩余的毫秒数 / min_ms 后取整 就可以得到 有多少个整的分钟;
最后 将总的时间戳 n % min_ms 就可以得到 不能转化为分钟的毫秒数,也就是只能转化为秒
然后将这些毫秒数 / 1000 转化为秒并且取整就可以了
举例实现:
var endDate = new Date('/5/28 08:00:00') //定义一个时间 var nowDate = new Date() //获取当前时间 var timeDifference = endDate - nowDate; //获取时间戳 var hour_ms = 60 * 60 * 1000; //一小时等于的毫秒数 var min_ms = 60 * 1000; // 一分钟等于的毫秒数 var ss_ms = 1000; //一秒等于的毫秒数 var h_ms = parseInt(timeDifference / hour_ms); //获取小时部分 var m_ms = parseInt(timeDifference % hour_ms / min_ms); //获取分钟部分 var s_ms = parseInt(timeDifference % min_ms / 1000); //获取秒数
Ok通过以上步骤,就可以获取到具体的时分秒了