文档章节

javascript引用类型之Date类型

柳哥
 柳哥
发布于 2015/04/06 20:52
字数 760
阅读 79
收藏 6
js

Date类型使用自UTC(国际协调时间)1970年1月1日午夜(0时)开始经过的毫秒数来保存日期。要创建一个日期对象,使用new操作符和Date构造函数即可:

var now = new Date();

在调用Date构造函数而不传递参数的情况下,新创建的对象自动获得当前日期和时间。如果想根据特定的日期和时间创建时期对象,必须传入表示该日期的毫秒数。为了简化这一计算过程,javascript提供了两个方法:Date.parse()和Date.UTC()。

其中,Date.parse()方法接收一个表示日期的字符串参数,然后尝试根据这个字符串返回相应日期的毫秒数。ECMA-262没有定义Date.parse()应该支持哪种日期格式,因此这个方法的行为因实现而异,而且通常是因地区而异。将地区设置为美国的浏览器通常都接受下列日期格式:

  • "月/日/年",如 6/13/2004

  • "英文月名 日,年",如January 12,2004

  • "英文星期几 英文月名 日 年 时:分:秒 时区",如Tue May 25 2004 00:00:00 GMT-0700

例如,要为2004年5月25日创建一个日期对象,可以使用下面的代码:

var someDate = new Date(Date.parse("May 25,2004"));

如果传入Date.parse()方法的字符串不能表示日期,那么它会返回NaN。实际上,如果直接将表示日期的字符串传递给Date构造函数,也会在后台调用Date.parse()。换句话说,下面的代码与前面的例子是等价的:

var someDate = new Date("May 25,2004");

Date.UTC()方法同样也返回表示日期的毫秒数,介它与Date.parse()在构建值时使用不同的信息。Date.UTC()的参数分别是年份,基于0的月份(一月是0,二月是1,以此类推),月中的哪一天(1~31),小时数(0~23),分钟,秒以及毫秒数。在这些参数中,只有前两个参数(年和月)是必需的。如果没有提供月中的天数,则假设天数为1。如果省略其他参数,则统统假设为0:

//GMT时间2000年1月1日午夜零时
var y2k = new Date(Date.UTC(2000,0));
//GMT时间2005年5月5日下午5:55:55
var allFives = new Date(Date.UTC(2005,4,5,17,55,55));

如同模仿Date.parse()一样,Date构造函数也会模仿Date.UTC(),但有一点明显不同:日期和时间都基于本地时区而非GMT来创建。不过,Date构造函数接收的参数仍然与Date.UTC()相同。因此,如果第一个参数是数值,Date构造函数就会假设该值是日期中的年份,而第二个参数是月份,以此类推:

//本地时间2000年1月1日午夜0时
var y2k = new Date(2000,0);
//本地时间2005年5月5日下午5:55:55
var allFives = new Date(2005,4,5,17,55,55);

日期格式化方法,日期/时间组件方法等,这里就不写了,看书看文档!!!!!

© 著作权归作者所有

共有 人打赏支持
柳哥
粉丝 203
博文 405
码字总数 347782
作品 0
杭州
技术主管
细说JavaScript数据类型及转换

细说JavaScript数据类型及转换 JavaScript数据类型 1.Boolean(布尔) 布尔:(值类型)var b1=true;//布尔类型 2.Number(数字) 数值:(值类型)var n1=3.1415926;//数值类型 n1.toFixed...

开元中国2015
2015/07/13
0
0
【摘】【编写可维护的JavaScript】判断javascript中的类型

判断javascript中的类型--编写维护的JavaScript 检测原始值 你希望一个值是字符串、数字、布尔值或undefined,最佳选择是使用typeof运算符 typeof运算符的独特之处在于,将其用于一个未声明的...

jackzlz
2015/08/23
0
0
JavaScript菜鸽子基础知识总结(一)

学习JavaScript有段时间了,尽管学的不怎么好。但我相信有志者,铁杵磨成针。呵呵呵~~ ①JavaScript能做什么?我所了解的 ⑴在HTML网页中放入动态文本 ⑵响应用户在使用网页时产生的事件 ⑶检...

睡觉谁教谁叫呢
2014/02/18
0
0
JS typeof 与 instanceof

JS中常用来判定变量类型的两个函数为 typeof 和 instanceof typeof 的结果有 undefined, number, boolean, string, function, object[null, Array,String,Date.....] 要注意的地方是 typeof......

big_cat
2015/11/13
0
0
JavaScript之数据类型

前言 JavaScript一共有6中数据类型: 基本数据类型(5):字符串(String)、数字(Number)、布尔(Boolean)、数组(Array)、空(Null)、未定义(Undefined) 复杂数据类型(1):对象(Object...

苦读代码
08/15
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

spring 容器实现对bean的管理(注解方式解析,源码阅读)

因为最近在研究学习spring boot,所以这里想详细学习回顾了一下spring 容器对bean的一些管理方式和部分源码学习。 首先初始类AnnotationConfigApplicationContext,简单源码查看,支持两个参...

小海bug
18分钟前
0
0
数据结构:二分查找 java

二分查找的前提是有序存储,利用顺序存储和元素排序 /** * 二分查找,查找成功,返回下标记 * @param values * @param begin * @param end * @param key * @param <T> * @ret...

京一
36分钟前
0
0
@SpringBootApplication 注解

@SpringBootApplication注解是一个组合注解,包含以下注解 @Target(ElementType.TYPE) 注解的作用目标 @Retention(RetentionPolicy.RUNTIME) Reteniton的作用是定义被它所注解的注解保留多久,...

java.刘
49分钟前
0
0
sentinel自定义DataSource实战

序 本文主要研究一下如何自定义sentinel的DataSource,这里以jdbc为例。 maven <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-sen......

go4it
今天
1
0
xgboost/gbdt在调参时为什么树的深度很少就能达到很高的精度?

问题: 用xgboost/gbdt在在调参的时候把树的最大深度调成6就有很高的精度了。但是用DecisionTree/RandomForest的时候需要把树的深度调到15或更高。用RandomForest所需要的树的深度和Decisio...

tantexian
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部