有一个比较棘手的问题,时间差的问题,求解,在线等

sl0018 2013-03-05 11:24:57
我知道开始时间,结束时间,例如
2013-03-03 20:00:00
2013-03-04 06:00:00
我已经能知道两个时间差是10个小时
我现在想计算的是,开始时间到当天结束是几个小时,例如
2013-03-03 20:00:00 应该是到结束是4个小时
那么后面的时间就应该是10-4=6个小时,问题是我不知道如何去计算开始时间到本天结束的时间差,应该用js怎么写?
求解。
function doJs(){

var kssj=dv_1.GetItemValue(dv_1.GetCurrentRow(),"kssj");
//kssj=kssj.format('yyyy-MM-dd hh:mm:ss');
var jssj=dv_1.GetItemValue(dv_1.GetCurrentRow(),"jssj");
//jssj=jssj.format('yyyy-MM-dd hh:mm:ss');
var date3=jssj.getTime()-kssj.getTime();
var leave1=date3%(24*3600*1000) //计算天数后剩余的毫秒数
var hours=Math.floor(leave1/(3600*1000))
dv_1.SetItemValue(dv_1.GetCurrentRow(),"sl",hours);
alert(hours);
}
我程序计算的方法,只能得到两个时间的时间差。求完善。
...全文
252 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
sl0018 2013-03-05
  • 打赏
  • 举报
回复
引用 8 楼 showbo 的回复:
JavaScript code?1234 var s1 = '2013/03/03 20:00:00', s2 = '2013/03/04 06:00:00'; var d1 = new Date(s1), d2 = new Date(s2), d3 = new Date(d1.getFullYear() + '/' + (d1.getMonth() + 1)……
这个是正解,要的就是这个数字,非常感谢。
sl0018 2013-03-05
  • 打赏
  • 举报
回复
没看懂干嘛的?两个时间点是跨天的,我需要得到没跨天的小时数,如果没跨天,是总数,要是跨天了,要分成两个,没跨天的小时数以及跨天以后的小时数。
  • 打赏
  • 举报
回复
    var s1 = '2013/03/03 20:00:00', s2 = '2013/03/04 06:00:00';
    var d1 = new Date(s1), d2 = new Date(s2), d3 = new Date(d1.getFullYear() + '/' + (d1.getMonth() + 1) + '/' + (d1.getDate() + 1));
    var totalHour = (d2.getTime() - d1.getTime()) / (1000 * 60 * 60), preHour = (d3.getTime() - d1.getTime()) / (1000 * 60 * 60), nextHour = totalHour - preHour;
    alert('总时间:'+totalHour+'\n' + d1.toLocaleString() + '~' + d3.toLocaleString() + ':' + preHour + '\n剩下的:' + nextHour);
mycoolaccount 2013-03-05
  • 打赏
  • 举报
回复
用两个时间戳相减不就可以了吗
001007009 2013-03-05
  • 打赏
  • 举报
回复
没明白到底要得到什么。
jiashu912387 2013-03-05
  • 打赏
  • 举报
回复
转成 new Date().getTime() 剪掉2个时间差 不就可以了。。还转啥哦。。。
niemingming 2013-03-05
  • 打赏
  • 举报
回复
是不是可以考虑比较开始时间和结束时间的格式化值(2013-03-05)是否相等,如果不相等就跨天了,然后再计算就简单了。
sl0018 2013-03-05
  • 打赏
  • 举报
回复
在给客户做一个加班管理,要求计算的是到24:00以前是一个计费标准,到24点以后是一个计费标准。
sl0018 2013-03-05
  • 打赏
  • 举报
回复
时间差我是已经计算出来了,我是想计算开始时间到结束时间有没有跨天,要是跨天了,那么这个没跨天的时间是多少,跨天的是多少?
爱T 2013-03-05
  • 打赏
  • 举报
回复
调用sql利用数据库的函数来计算时间差 不就简单了吗?
jiashu912387 2013-03-05
  • 打赏
  • 举报
回复
。。。就看代码。。也不看看 办法是谁先想出来的。。一分都没有。。真没意思

87,992

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧