在havascript中将hh:mm:ss除以整数

3zz*_*zzy 1 javascript datetime

我需要将时间(hh:mm:ss)除以整数.例如13:14:24/ 12.

如果我将它转换为日期并除以:

new Date( date.getMonth()+1 + " " +  
          date.getDate() + ", " + 
          date.getFullYear() + " " + 
          "13:14:24") / 12;
Run Code Online (Sandbox Code Playgroud)

我得到一个非常长的数字119579922000,是日期/ 12毫秒?我需要结果是相同的hh:mm:ss格式.

Dar*_*ook 5

var h = 13, m = 14, s = 24;

var secsSinceMidnight = (h*3600) + (m*60) + s;
var oneTwelth = secsSinceMidnight / 12;

h = Math.floor(oneTwelth / 3600);
m = Math.floor( (oneTwelth % 3600) / 60);
s = Math.floor( (oneTwelth % 3600) % 60);

console.log(h + ":" + m + ":" + s);
Run Code Online (Sandbox Code Playgroud)

以下是使用Sugar.js库的替代方法,这是我在JavaScript中日期处理的个人选择扩展:

var midnight = Date.create().beginningOfDay();
var secsSinceMidnight = Date.create().secondsSince(midnight);
console.log( (secsSinceMidnight/12).secondsAfter(midnight) );
Run Code Online (Sandbox Code Playgroud)

解释最后一行:secondsAfter是在Number类型上定义的函数.它返回一个Date对象,然后发送给它console.log().