Javascript中Date类型和Math类型详解


Posted in Javascript onFebruary 27, 2016

Date类型

ECMASCript中的Date类型是在早期中Java中的java.util.Date类基础上构建的。为此Date类型使用自UTC(国际协调时间)1970年1月1日午夜(0时)开始经过的毫秒数来保存日期。

创建日期对象

1.创建当前日期。不需要传入参数
2.创建指定日期。需要传入参数,必须传入表示该日期的毫秒数(即从1970年1月1日午夜起至该日期止经过的毫秒数)。为了简化这一计算过程,ECMAScript提供了两个方法:Date.parse()和Date.UTC()。

var now = new Date()//新创建的对象自动获得当前日期和时间
var someDate = new Date('May 25, 2004')
var allFives = new Date(2015, 4, 4, 17, 55, 55)

Date.parse()和Date.UTC()

Date.parse()

接收一个表示日期的字符串参数,然后尝试根据这个字符串返回相应日期的毫秒数
var someDate = new Date(Date.parse('May 25,2015'))
Note:ECMA-262没有定义Date.parse()应该支持那种日期格式,因此这个方法因实现而异,而且通常因地区而异。而实际上将表示日期的字符串传递给Date构造函数,也会在后台调用Date.parse()。

Date.UTC()

参数分别是:年份,基于0的月份,日,小时,分钟,秒,以 及毫秒数。只有前两个参数是必须的。如果省略其他参数,则统统假设为0.

// GMT时间2016年1月1日午夜0时
var M = new Date(Date.UTC(2016, 0));

// GMT时间2015年5月5日下午5:55:55
var allFives = new Date(Date.UTC(2015, 4, 4, 17, 55, 55));

Note:Date构造函数也会模仿Date.UTC(),但有一点明显不同:日期和时间都基于本地时区而非GMT创建。不过Date构造函数仍与Date.UTCf()接收的参数相同。

Date.now()

返回调用这个方法时的日期和时间的毫秒数。

// 取得开始时间
var start = Date.now();

// 调用函数
doSomthing();

// 取得停止时间
var stop = Date.now();

result = stop - start;

兼容性:IE9+,Firfox3+,Safari3+,Opera10.5,Chrome。在不支持它的浏览器中,使用+操作符把Date对象转换成字符串,也可以达到同样目的

日期格式化方法

将日期格式化为字符串的方法

  1. toDateString()
  2. toTimeString()
  3. toLocalDateString()
  4. toLocalTimeString()
  5. toUTCString()

推荐:toUTCString()

Note:UTC日期指的是没有时区偏差的情况下(将日期转换为GMT时间)的日期值。

Math类型

min( )和max( )

var value = [1,2,3,4,5,6,7,8];
var max = Math.max.apply(Math, values);

舍入方法

Math.ceil( ):向上舍入
Math.floor( ):向下舍入
Math.round( ):四舍五入
random( )
Math.random( )方法返回介于0和1之间的一个随机数,不包括0和1
var num = Math.floor(Math.random()*10, + 1)//返回1-10之间的数
Javascript 相关文章推荐
动态加载图片路径 保持JavaScript控件的相对独立性
Sep 06 Javascript
jquery使用ul模拟select实现表单美化的方法
Aug 18 Javascript
Vue2单一事件管理组件通信
May 09 Javascript
深入理解基于vue-cli的vuex配置
Jul 24 Javascript
js事件委托和事件代理案例分享
Jul 25 Javascript
JavaScript运行原理分析
Feb 09 Javascript
详解如何提升JSON.stringify()的性能
Jun 12 Javascript
jQuery - AJAX load() 实例用法详解
Aug 27 jQuery
使用layui前端框架弹出form表单以及提交的示例
Oct 25 Javascript
微信小程序实现二维码签到考勤系统
Jan 16 Javascript
CKEditor扩展插件:自动排版功能autoformat插件实现方法详解
Feb 06 Javascript
jQuery实现电梯导航模块
Dec 22 jQuery
原生javascript实现匀速运动动画效果
Feb 26 #Javascript
探索angularjs+requirejs全面实现按需加载的套路
Feb 26 #Javascript
JavaScript代码生成PDF文件的方法
Feb 26 #Javascript
JavaScript 定时器 SetTimeout之定时刷新窗口和关闭窗口(代码超简单)
Feb 26 #Javascript
自动完成的搜索框javascript实现
Feb 26 #Javascript
jQuery实现控制文字内容溢出用省略号(…)表示的方法
Feb 26 #Javascript
js去字符串前后空格的实现方法
Feb 26 #Javascript
You might like
php表单加入Token防止重复提交的方法分析
2016/10/10 PHP
laravel 5.5 关闭token的3种实现方式
2019/10/24 PHP
一些技巧性实用js代码小结
2009/10/14 Javascript
层序遍历在ExtJs的TreePanel中的应用
2009/10/16 Javascript
广泛收集的jQuery拖放插件集合
2012/04/09 Javascript
JavaScript不刷新实现浏览器的前进后退功能
2014/11/05 Javascript
jQuery根据用户电脑是mac还是pc加载对应样式的方法
2015/06/26 Javascript
jQuery实现仿百度帖吧头部固定导航效果
2015/08/07 Javascript
JavaScript实现横向滑出的多级菜单效果
2015/10/09 Javascript
使用Angular.js实现简单的购物车功能
2016/11/21 Javascript
详解angular中如何监控dom渲染完毕
2017/01/03 Javascript
es6系列教程_ Map详解以及常用api介绍
2017/09/25 Javascript
vue.js中npm安装教程图解
2018/04/10 Javascript
小程序server请求微信服务器超时的解决方法
2019/05/21 Javascript
[01:22:19]EG vs TNC Supermajor小组赛B组败者组第一轮 BO3 第二场 6.2
2018/06/03 DOTA
Python下使用Scrapy爬取网页内容的实例
2018/05/21 Python
python通过zabbix api获取主机
2018/09/17 Python
在python中pandas读文件,有中文字符的方法
2018/12/12 Python
Python修改文件往指定行插入内容的实例
2019/01/30 Python
python代理工具mitmproxy使用指南
2019/07/04 Python
python 图片去噪的方法示例
2019/07/09 Python
关于Python 常用获取元素 Driver 总结
2019/11/24 Python
python基于TCP实现的文件下载器功能案例
2019/12/10 Python
在python中使用nohup命令说明
2020/04/16 Python
应用数学自荐书范文
2013/11/24 职场文书
授权委托书范本
2014/04/03 职场文书
婚纱店策划方案
2014/05/22 职场文书
英语专业毕业生求职信
2014/05/24 职场文书
关于护士节的演讲稿
2014/05/26 职场文书
出租房屋协议书
2014/09/14 职场文书
学生上课看漫画的检讨书
2014/09/26 职场文书
天下第一关导游词
2015/02/06 职场文书
2015小学五年级班主任工作总结
2015/05/21 职场文书
2019数学教师下学期工作总结
2019/06/27 职场文书
索尼ICF-36收音机评测
2022/04/30 无线电
Python使用Opencv打开笔记本电脑摄像头报错解问题及解决
2022/06/21 Python