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 相关文章推荐
基于jquery的模态div层弹出效果
Aug 21 Javascript
高亮显示web页表格行的javascript代码
Nov 19 Javascript
js实现动态添加、删除行、onkeyup表格求和示例
Aug 18 Javascript
使用text方法获取Html元素文本信息示例
Sep 01 Javascript
jQuery Ajax()方法使用指南
Nov 19 Javascript
IE10中flexigrid无法显示数据的解决方法
Jul 26 Javascript
js实现接收表单的值并将值拼在表单action后面的方法
Nov 23 Javascript
学习javascript面向对象 实例讲解面向对象选项卡
Jan 04 Javascript
vue element-ui 绑定@keyup事件无效的解决方法
Mar 09 Javascript
vue的全局变量和全局拦截请求器的示例代码
Sep 13 Javascript
webpack优化的深入理解
Dec 10 Javascript
小程序使用watch监听数据变化的方法详解
Sep 20 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运行出现Call to undefined function curl_init()的解决方法
2010/11/02 PHP
抓取并下载CSS中所有图片文件的php代码
2011/09/26 PHP
php获取$_POST同名参数数组的实现介绍
2013/06/30 PHP
PHP图片等比缩放类SimpleImage使用方法和使用实例分享
2014/04/10 PHP
跟我学Laravel之快速入门
2014/10/15 PHP
PHP基于yii框架实现生成ICO图标
2015/11/13 PHP
JavaScript中的style.display属性操作
2013/03/27 Javascript
JavaScript的各种常见函数定义方法
2014/09/16 Javascript
浅谈javascript回调函数
2014/12/07 Javascript
javascript实现可全选、反选及删除表格的方法
2015/05/15 Javascript
Jquery揭秘系列:ajax原生js实现详解(推荐)
2016/06/08 Javascript
详解JavaScript对象类型
2016/06/16 Javascript
原生js实现简单的Ripple按钮实例代码
2017/03/24 Javascript
jquery easyui如何实现格式化列
2017/07/30 jQuery
用js实现before和after伪类的样式修改的示例代码
2017/09/07 Javascript
Vue 项目中遇到的跨域问题及解决方法(后台php)
2018/03/28 Javascript
jquery实现图片无缝滚动 蒙版遮蔽效果
2020/01/11 jQuery
python logging日志模块的详解
2017/10/29 Python
Python爬虫天气预报实例详解(小白入门)
2018/01/24 Python
python 矩阵增加一行或一列的实例
2018/04/04 Python
python实现俄罗斯方块游戏
2020/03/25 Python
Python Requests库基本用法示例
2018/08/20 Python
使用python的pandas库读取csv文件保存至mysql数据库
2018/08/20 Python
解决python opencv无法显示图片的问题
2018/10/28 Python
详解Python3序列赋值、序列解包
2019/05/14 Python
Python何时应该使用Lambda函数
2019/07/02 Python
Python使用Turtle库绘制一棵西兰花
2019/11/23 Python
使用Django实现把两个模型类的数据聚合在一起
2020/03/28 Python
意大利珠宝店:Luxury Zone
2019/01/05 全球购物
事业单位绩效考核实施方案
2014/03/27 职场文书
工地例会施工汇报材料
2014/08/22 职场文书
六查六看自检自查剖析材料
2014/10/14 职场文书
高中体育课教学反思
2016/02/16 职场文书
PHP解决高并发问题
2021/04/01 PHP
Java 通过手写分布式雪花SnowFlake生成ID方法详解
2022/04/07 Java/Android
Spring Data JPA框架持久化存储数据到数据库
2022/04/28 Java/Android