我想javascript写一个函数返回现在时间到当天8:30地时间差,返回的是秒数,不知道怎么写

 我来答
lyz810
2013-02-11 · 知道合伙人互联网行家
lyz810
知道合伙人互联网行家
采纳数:7531 获赞数:31777
前端开发工程师

向TA提问 私信TA
展开全部
function curTime(){
var current = new Date();//获取当前时间
var today = new Date(current.getFullYear()+'/'+(current.getMonth()+1)+'/'+current.getDate()+' '+'8:30')//今天的8:30
return parseInt(Math.abs(today.getTime()-current.getTime())/1000);//返回当前时间到今天8:30(早上)的时间差(总为正数,若需要正负数都有将Math.abs去掉)
}
jinyc007
2013-02-11 · TA获得超过934个赞
知道小有建树答主
回答量:398
采纳率:75%
帮助的人:475万
展开全部
主要用到了JS中的Date对象,思路是在样子的:
1、创建当前Date对象 now
2、获取当前年月日时分秒
3、使用Date.UTC()获取两个点的(现在和当日8点半)的毫秒,分别为 nowMS和pointMS
4、两个相减就是时间差(毫秒),转换成秒就好了

Date.UTC(year,month,day,hours,minutes,seconds,ms)
返回1970年1月1日到指定日期时间的毫秒数

代码
<!--用于显示-->

<div id="display"></div>
<script>
var now=new Date(),
year=now.getFullYear(),
month=now.getMonth(),
day=now.getDate(),
hours=now.getHours(),
minutes=now.getMinutes(),
seconds=now.getSeconds(),
ms=now.getMilliseconds(),
// 当前时间毫秒数(距离1970 年 1 月 1 日的毫秒数)
nowMS=Date.UTC(year,month,day,hours,minutes,seconds,ms),
// 当日8点30毫秒数(距离1970 年 1 月 1 日的毫秒数)

pointMS=Date.UTC(year,month,day, 8, 30, 0, 0),
// 两个相减就是时间差(毫秒)
diffMS=nowMS-pointMS,
// 显示出来
text=diffMS<0?"早":"晚";
document.getElementById("display").innerHTML="相差("+text+"):"+Math.abs(diffMS/1000)+"秒";
</script>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ck_2036
2013-02-12 · TA获得超过906个赞
知道小有建树答主
回答量:904
采纳率:33%
帮助的人:732万
展开全部
function timeOffset() {
var date = new Date();
date.setHours(8);
date.setMinutes(30);
return (new Date().getTime() - date.getTime()) / 1000;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式