我在这里看到的关于这个问题的帖子很少,但我找不到那个作为我的案例。所以我有一个有三列的表,比如A,B和C栏,其中A和B包括“3/9/2016 4:28:42 PM”形式的日期。 C列是A列和B列的差异。我得到了差异但是以毫秒为单位。我需要以天为单位的每列记录:小时:分钟格式。我看过一篇帖子Javascript show milliseconds as days:hours:mins without seconds,但无法在我的循环中实现。这是我正在研究的JavaScript。我该怎么做?
' SQL = some statements
<script>
$(function() {
ShowDifference();
ShowAverage();
});
function ShowDifference() {
var assigned;
var completed;
var difference;
$('#tbl tr').each(function() {
assigned = new Date($(this).find('.assigned').html())
completed = new Date($(this).find('.completed').html())
difference = completed - assigned;
// $(this).find('.difference').html(difference/1000/60/60);
$(this).find('.difference').html(difference);
});
}
function ShowAverage() {
var difference = Number(0);
var countRows = Number(0);
var average;
$('#tbl tr .difference').each(function() {
countRows = ($(this).html() !== '') ? countRows + 1 : countRows;
difference += Number($(this).html());
});
average = Number(difference / countRows);
$("#tbla #average").html(average);
}
</script>
答案 0 :(得分:5)
转换为秒(除以1000 ),然后转换为小时(除以3600 ),余数除以60得到分钟。
所有计算都是在总秒数上进行的,所以在评论中我描述了用于计算的内容
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
答案 1 :(得分:1)
只需将1439198499
与difference
放在一起。
以下是jsfiddle链接:jsfiddle
我使用控制台输出。
试试这个:
var date = new Date(1439198499*1000);
// Days part from the timestamp
var days = date.getDay();
// Hours part from the timestamp
var hours = date.getHours();
// Minutes part from the timestamp
var minutes = "0" + date.getMinutes();
// Will display time in 10:30:23 format
var formattedTime = days + ':' + hours + ':' + minutes.substr(-2);
console.log(formattedTime);
<强>输出强>
1时一十五分21秒