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 相关文章推荐
js Calender控件使用详解
Jan 05 Javascript
javascript中eval函数用法分析
Apr 25 Javascript
JavaScript获取表格(table)当前行的值、删除行、增加行
Jul 03 Javascript
JS动态添加iframe的代码
Sep 14 Javascript
移动端jQuery修正Web页面滑动时div问题的两则实例
May 30 Javascript
聊聊Vue.js的template编译的问题
Oct 09 Javascript
Vue 使用计时器实现跑马灯效果的实例代码
Jul 11 Javascript
2020京东618叠蛋糕js脚本(亲测好用)
Jun 02 Javascript
JS原型对象操作实例分析
Jun 06 Javascript
Vue页面手动刷新,实现导航栏激活项还原到初始状态
Aug 06 Javascript
js实现点击选项置顶动画效果
Aug 25 Javascript
一起来了解一下JavaScript的预编译(小结)
Mar 01 Javascript
原生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常用Output和ptions/Info函数集介绍
2013/06/19 PHP
php判断数组中是否存在指定键(key)的方法
2015/03/17 PHP
php类常量用法实例分析
2015/07/09 PHP
PHP结合jQuery实现找回密码
2015/07/22 PHP
Windows Server 2008 R2和2012中PHP连接MySQL过慢的解决方法
2016/07/02 PHP
PHP实现清除MySQL死连接的方法
2016/07/23 PHP
解决form中action属性后面?传递参数 获取不到的问题
2017/07/21 PHP
PHP基于双向链表与排序操作实现的会员排名功能示例
2017/12/26 PHP
PHP+RabbitMQ实现消息队列的完整代码
2019/03/20 PHP
javascript拓展DOM操作 prependChild insertAfert
2010/11/17 Javascript
通过Jquery遍历Json的两种数据结构的实现代码
2011/01/19 Javascript
分享精心挑选的12款优秀jQuery Ajax分页插件和教程
2012/08/09 Javascript
jquery隐藏标签和显示标签的实例
2013/11/11 Javascript
深入理解JavaScript系列(39):设计模式之适配器模式详解
2015/03/04 Javascript
AngularJS Module方法详解
2015/12/08 Javascript
简单谈谈Vue 模板各类数据绑定
2016/09/25 Javascript
nodejs个人博客开发第一步 准备工作
2017/04/12 NodeJs
解决OneThink中无法异步提交kindeditor文本框中修改后的内容方法
2017/05/05 Javascript
jQueryMobile之窗体长内容的缺陷与解决方法实例分析
2017/09/20 jQuery
浅谈FastClick 填坑及源码解析
2018/03/02 Javascript
[04:02]2014DOTA2国际邀请赛 BBC每日综述中国战队将再度登顶
2014/07/21 DOTA
[03:37]2015国际邀请赛第四日现场精彩集锦
2015/08/08 DOTA
python实现八大排序算法(1)
2017/09/14 Python
python取数作为临时极大值(极小值)的方法
2018/10/15 Python
Django中create和save方法的不同
2019/08/13 Python
Python request操作步骤及代码实例
2020/04/13 Python
Jupyter安装链接aconda实现过程图解
2020/11/02 Python
英国顶级家庭折扣店:The Works
2017/09/06 全球购物
Foot Locker德国官方网站:美国运动服和鞋类零售商
2018/11/01 全球购物
电大会计学自我鉴定
2014/02/06 职场文书
二年级班级文化建设方案
2014/05/10 职场文书
花坛标语大全
2014/06/30 职场文书
个人自查自纠材料
2014/10/14 职场文书
事业单位考察材料范文
2014/12/25 职场文书
2015年医院科室工作总结范文
2015/05/26 职场文书
2019教师的学习计划
2019/06/25 职场文书