全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

深入理解javascript的getTime()方法

1、理解getTime

getTime() 方法返回一个时间的格林威治时间数值。

可以使用这个方法把一个日期时间赋值给另一个Date 对象。

语法:

dateObj.getTime()
参数:

无。

返回值:

getTime 方法的返回值一个数值,表示从1970年1月1日0时0分0秒(UTC,即协调世界时)距离该日期对象所代表时间的毫秒数。

例子:

使用 getTime() 复制日期对象

创建一个拥有相同时间值的日期对象。

var birthday = new Date(1994, 12, 10);
var copy = new Date();
copy.setTime(birthday.getTime());

测试结果如下:

    既然表示从1970年1月1日开始计算的毫秒数,如果小于1970年呢,会是什么情况?(测试结果如下,是负数)

2、应用场景

2.1 测量代码执行时间

连续调用两个新生成的日期对象的 getTime 方法,根据两次调用的返回值求得时间差。这可以用于计算某些操作的执行时间。

var end, start, i;
start = new Date();
for (i = 0; i < 100000; i++) {
 Math.sqrt(i);
}
end = new Date();

console.log("Operation took " + (end.getTime() - start.getTime()) + " msec");

在chrome浏览器中进行测试:

2.2 甘特图时间表示

最近在调整teamwork gantt中,发现,是一个task任务项的开始时间与结束时间,都是用一个整数表示,而该数值就是UTC表示法。格式如下:

{"tasks":[
   {"id":-1,"name":"Gantt editor","code":"","level":0,"status":"STATUS_ACTIVE","canWrite":true,"start":1396994400000,"duration":21,"end":1399672799999,"startIsMilestone":true,"endIsMilestone":false,"collapsed":false,"assigs":[],"hasChild":true}
   ,{"id":-2,"name":"coding","code":"","level":1,"status":"STATUS_ACTIVE","canWrite":true,"start":1396994400000,"duration":10,"end":1398203999999,"startIsMilestone":false,"endIsMilestone":false,"collapsed":false,"assigs":[],"description":"","progress":0,"hasChild":true}
   ,{"id":-3,"name":"gantt part","code":"","level":2,"status":"STATUS_ACTIVE","canWrite":true,"start":1396994400000,"duration":2,"end":1397167199999,"startIsMilestone":false,"endIsMilestone":false,"collapsed":false,"assigs":[],"depends":"","hasChild":false}
   ,{"id":-4,"name":"editor part","code":"","level":2,"status":"STATUS_SUSPENDED","canWrite":true,"start":1397167200000,"duration":4,"end":1397685599999,"startIsMilestone":false,"endIsMilestone":false,"collapsed":false,"assigs":[],"depends":"","hasChild":false}
   ,{"id":-5,"name":"testing","code":"","level":1,"status":"STATUS_SUSPENDED","canWrite":true,"start":1398981600000,"duration":6,"end":1399672799999,"startIsMilestone":false,"endIsMilestone":false,"collapsed":false,"assigs":[],"depends":"","description":"","progress":0,"hasChild":true}
   ,{"id":-6,"name":"test on safari","code":"","level":2,"status":"STATUS_SUSPENDED","canWrite":true,"start":1398981600000,"duration":2,"end":1399327199999,"startIsMilestone":false,"endIsMilestone":false,"collapsed":false,"assigs":[],"depends":"8SF:11","hasChild":false}
   ,{"id":-7,"name":"test on safari","code":"","level":2,"status":"STATUS_SUSPENDED","canWrite":true,"start":1398981600000,"duration":2,"end":1399327199999,"startIsMilestone":false,"endIsMilestone":false,"collapsed":false,"assigs":[],"depends":"8SF","hasChild":false}
   ,{"id":-8,"name":"test on ie","code":"","level":2,"status":"STATUS_SUSPENDED","canWrite":true,"start":1400688000000,"duration":3,"end":1400947199999,"startIsMilestone":false,"endIsMilestone":false,"collapsed":false,"assigs":[],"depends":"","hasChild":false}
   ,{"id":-9,"name":"test on chrome","code":"","level":2,"status":"STATUS_SUSPENDED","canWrite":true,"start":1399327200000,"duration":2,"end":1399499999999,"startIsMilestone":false,"endIsMilestone":false,"collapsed":false,"assigs":[],"links":"","hasChild":false}
   ,{"id":-10,"name":"Gantt editor","code":"","level":0,"status":"STATUS_ACTIVE","canWrite":true,"start":1396994400000,"duration":21,"end":1399672799999,"startIsMilestone":true,"endIsMilestone":false,"collapsed":false,"assigs":[],"hasChild":true}
   ,{"id":-11,"name":"coding","code":"","level":1,"status":"STATUS_ACTIVE","canWrite":true,"start":1396994400000,"duration":10,"end":1398203999999,"startIsMilestone":false,"endIsMilestone":false,"collapsed":false,"assigs":[],"description":"","progress":0,"hasChild":true}
   ,{"id":-12,"name":"gantt part","code":"","level":2,"status":"STATUS_ACTIVE","canWrite":true,"start":1396994400000,"duration":2,"end":1397167199999,"startIsMilestone":false,"endIsMilestone":false,"collapsed":false,"assigs":[],"depends":"","hasChild":false}
   ,{"id":-14,"name":"editor part","code":"","level":2,"status":"STATUS_SUSPENDED","canWrite":true,"start":1397167200000,"duration":4,"end":1397685599999,"startIsMilestone":false,"endIsMilestone":false,"collapsed":false,"assigs":[],"depends":"","hasChild":false}
   ,{"id":-15,"name":"testing","code":"","level":1,"status":"STATUS_SUSPENDED","canWrite":true,"start":1398981600000,"duration":6,"end":1399672799999,"startIsMilestone":false,"endIsMilestone":false,"collapsed":false,"assigs":[],"depends":"","description":"","progress":0,"hasChild":true}
   ,{"id":-16,"name":"test on safari","code":"","level":2,"status":"STATUS_SUSPENDED","canWrite":true,"start":1398981600000,"duration":2,"end":1399327199999,"startIsMilestone":false,"endIsMilestone":false,"collapsed":false,"assigs":[],"depends":"","hasChild":false}
   ,{"id":-17,"name":"test on ie","code":"","level":2,"status":"STATUS_SUSPENDED","canWrite":true,"start":1399327200000,"duration":3,"end":1399586399999,"startIsMilestone":false,"endIsMilestone":false,"collapsed":false,"assigs":[],"depends":"","hasChild":false}
   ,{"id":-18,"name":"test on chrome","code":"","level":2,"status":"STATUS_SUSPENDED","canWrite":true,"start":1399327200000,"duration":2,"end":1399499999999,"startIsMilestone":false,"endIsMilestone":false,"collapsed":false,"assigs":[],"depends":"","hasChild":false}
   ],"selectedRow":0,"canWrite":true,"canWriteOnParent":true}

在甘特图中,使用getTime表示时间有以下优势:

计算两个时间差比较方便
数据存储结构比较简单
由于gantt涉及到画图,使用整型数据方便处理

3、浏览器的兼容性

使用js要收到浏览器的限制,不同浏览器对js类库的支持强弱也不同。而作为标准类库Date的一个方法,其适应的浏览器如下:

4、参考资料

Date.prototype.getTime():https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Date/getTime


# javascript  # getTime  # JavaScript中的getTimezoneOffset()方法使用详解  # JavaScript中的getTime()方法使用详解  # 返回值  # 执行时间  # 都是  # 是一个  # 类库  # 两次  # 甘特图  # 涉及到  # 参考资料  # 这可  # 创建一个  # 使用这个  # 进行测试  # 数据存储  # 而该  # 整型  # 器中  # 结束时间  # 格林威治时间  # Operation 


相关文章: 建站之星如何快速更换网站模板?  如何撰写建站申请书?关键要点有哪些?  linux top下的 minerd 木马清除方法  网站微信制作软件,如何制作微信链接?  建站主机与服务器功能差异如何区分?  Dapper的Execute方法的返回值是什么意思 Dapper Execute返回值详解  山东网站制作公司有哪些,山东大源集团官网?  详解jQuery停止动画——stop()方法的使用  南京网站制作费用,南京远驱官方网站?  如何正确下载安装西数主机建站助手?  如何高效利用200m空间完成建站?  网站海报制作教学视频教程,有什么免费的高清可商用图片网站,用于海报设计?  建站之星如何助力企业快速打造五合一网站?  定制建站平台哪家好?企业官网搭建与快速建站方案推荐  如何快速生成可下载的建站源码工具?  建站之星手机一键生成:多端自适应+小程序开发快速建站指南  北京企业网站设计制作公司,北京铁路集团官方网站?  如何快速搭建支持数据库操作的智能建站平台?  如何访问已购建站主机并解决登录问题?  购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?  唐山网站制作公司有哪些,唐山找工作哪个网站最靠谱?  北京专业网站制作设计师招聘,北京白云观官方网站?  制作充值网站的软件,做人力招聘为什么要自己交端口钱?  公司网站制作费用多少,为公司建立一个网站需要哪些费用?  建站DNS解析失败?如何正确配置域名服务器?  网站插件制作软件免费下载,网页视频怎么下到本地插件?  建站之星如何快速解决建站难题?  高性能网站服务器配置指南:安全稳定与高效建站核心方案  公众号网站制作网页,微信公众号怎么制作?  建站之星Pro快速搭建教程:模板选择与功能配置指南  ,柠檬视频怎样兑换vip?  网站制作公司排行榜,抖音怎样做个人官方网站  网站设计制作公司地址,网站建设比较好的公司都有哪些?  建站主机服务器选购指南:轻量应用与VPS配置解析  建站之星代理如何优化在线客服效率?  如何配置IIS站点权限与局域网访问?  网站制作说明怎么写,简述网页设计的流程并说明原因?  mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?  网站设计制作企业有哪些,抖音官网主页怎么设置?  网站制作专业公司有哪些,如何制作一个企业网站,建设网站的基本步骤有哪些?  如何通过PHP快速构建高效问答网站功能?  建站之星logo尺寸如何设置最合适?  微信推文制作网站有哪些,怎么做微信推文,急?  打鱼网站制作软件,波克捕鱼官方号怎么注册?  视频网站app制作软件,有什么好的视频聊天网站或者软件?  如何在宝塔面板中修改默认建站目录?  宁波免费建站如何选择可靠模板与平台?  巅云智能建站系统:可视化拖拽+多端适配+免费模板一键生成  番禺网站制作公司哪家值得合作,番禺图书馆新馆开放了吗?  香港服务器WordPress建站指南:SEO优化与高效部署策略 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。