JavaScript Date全解

Date构造函数

New Date() | Date()

没有参数默认就是系统当前时区的时间,结果:

Sat Apr11 2015 16:42:09 GMT+0800 (China Standard Time)

生成代表当前系统的时间,不用new也可以生成,Date本身就是个方法。

New Date(milliseconds)

这个毫秒参数是从1970-01-01 00:00:00到现在所经过的时间。

New Date(datestring)

ECMA没有规定,所以只列出目前支持的格式。

ISO格式时间

ISO格式的时间最显著的特点是年月日之间使用连字符(-)分开,日期和时间可能有一个字母(T),时间后面可能有一个字母Z或时差。

T没有意义,只是表示日期和时间是在这里分割开的;Z表示这个时间是UTC时间。


类ISO格式


结果


2015-1


Thu Jan 01 2015 00:00:00 GMT+0800 (China Standard Time)


2015-1-1


Thu Jan 01 2015 00:00:00 GMT+0800 (China Standard Time)


2015-1 00:00:00+04:00


Thu Jan 01 2015 04:00:00 GMT+0800 (China Standard Time)


2015-1-1 00:00:00+04:00


Thu Jan 01 2015 04:00:00 GMT+0800 (China Standard Time)


2015-1-1 00:00:00Z+08:00


Thu Jan 01 2015 00:00:00 GMT+0800 (China Standard Time)


2015-01-01 00:00


Thu Jan 01 2015 00:00:00 GMT+0800 (China Standard Time)


2015-01-01 00:00:00


Thu Jan 01 2015 00:00:00 GMT+0800 (China Standard Time)


2015-01-01 00:00:00+08:00


Thu Jan 01 2015 00:00:00 GMT+0800 (China Standard Time)


2015-01-01 00:00:00Z


Thu Jan 01 2015 08:00:00 GMT+0800 (China Standard Time)


2015-01-01 00:00:00Z+08:00


Thu Jan 01 2015 00:00:00 GMT+0800 (China Standard Time)


ISO标准格式


结果


2015-01


Thu Jan 01 2015 08:00:00 GMT+0800 (China Standard Time)


2015-01-01


Thu Jan 01 2015 08:00:00 GMT+0800 (China Standard Time)


2015-01-01T00:00:00


Thu Jan 01 2015 08:00:00 GMT+0800 (China Standard Time)


2015-01-01T00:00:00Z


Thu Jan 01 2015 08:00:00 GMT+0800 (China Standard Time)


2015-01-01T00:00:00+08:00


Thu Jan 01 2015 00:00:00 GMT+0800 (China Standard Time)


2015135


不支持


20150101


不支持


2015-W011


不支持


-2015-01-01 00:00:00


不支持公元前,返回的是

Thu Jan 01 2015 00:00:00 GMT+0800 (China Standard Time)

规律总结:

  • 带时区的日期时间字符串表示的是指定时区的时间。不带时区的日期时间字符串,则分两种情况:类ISO结构的日期时间字符串表示的是系统当前时区的时间,而ISO标准结构的日期时间字符串表示的是格林尼治子午线的当前时间。
  • Z或z的作用不仅仅是表示是UTC时间,Z同时说明这个日期时间字符串表示的是0时差偏移的时间,视同于格林尼治的子午线时间。但Z后可以继续加时差,偏移从0开始计算。
  • 因为Date是在客户端生成的,因此实际的Date已经换算成了本地系统的时间,使用的时候需要注意,日期时间字符串变成Date对象之后,时间和日期的值可能和字符串中的值是有时差的。

其它支持的格式

例子


结果


2015/01/02


Thu Jan 02 2015 00:00:00 GMT+0800 (China Standard Time)


2015/01/02 00:00:00


Thu Jan 02 2015 00:00:00 GMT+0800 (China Standard Time)


2015/01/02 00:00


Thu Jan 02 2015 00:00:00 GMT+0800 (China Standard Time)


2015/1/2


Thu Jan 02 2015 00:00:00 GMT+0800 (China Standard Time)


01/02/2015


Thu Jan 02 2015 00:00:00 GMT+0800 (China Standard Time)


1/2/2015


Thu Jan 02 2015 00:00:00 GMT+0800 (China Standard Time)


1/2 2015


Thu Jan 02 2015 00:00:00 GMT+0800 (China Standard Time)


01/02 2015


Thu Jan 02 2015 00:00:00 GMT+0800 (China Standard Time)


1 2 2015


Thu Jan 02 2015 00:00:00 GMT+0800 (China Standard Time)

IE5-10不支持这个日期格式


1 2,2015


Thu Jan 02 2015 00:00:00 GMT+0800 (China Standard Time)

IE5-10不支持这个日期格式


1,2,2015


Thu Jan 02 2015 00:00:00 GMT+0800 (China Standard Time)

IE5-10不支持这个日期格式


1,2 2015


Thu Jan 02 2015 00:00:00 GMT+0800 (China Standard Time)

IE5-10不支持这个日期格式


May 1,2015


Fri May 01 2015 00:00:00 GMT+0800 (China Standard Time)


May 1 2015


Fri May 01 2015 00:00:00 GMT+0800 (China Standard Time)


May,1,2015


Fri May 01 2015 00:00:00 GMT+0800 (China Standard Time)


May,1 2015


Fri May 01 2015 00:00:00 GMT+0800 (China Standard Time)

各地日期表示格式

时间: 2024-08-03 23:40:27

JavaScript Date全解的相关文章

【1】JavaScript编程全解笔记(一)

1.概述 本书涵盖了 JavaScript 各个方面的主题,从客户端以及服务端 JavaScript 等基础内容,主要讲了  HTML5.Web API.Node.js 与 WebSocket 等技术. 本书前半部分对 JavaScript 基础进行解说. 本书后半部分主要介绍包括客户端 JavaScript.HTML5.Web API 以及服务器 JavaScript 等与 JavaScript 相关的应用领域. ing!!!

<<JavaScript编程全解>>阅读笔记之函数与闭包

1.通过函数声明语句声明的函数,可以在进行声明的代码行之前调用 function doit() { fn(); function fn() { alert("ok"); } } doit(); //ok 2.匿名函数不能再进行声明代码行之前调用 function doit() { fn(); fn= function () { alert("ok"); } } doit(); //Uncaught ReferenceError: fn is not defined

javascript原型详解

1.原型基本特征: ps:1.原型类型与其他语言的一个类,所定义的属性,方法可以被此类产生的所有对象所共享 2.修改原型的属性或者方法,会立即生效,其派生的子类的属性,方法也将改变 例子1: function Mytest(){ } Mytest.prototype.name="jerry"; var test1=new Mytest(); alert(test1.name);//jerry Mytest.prototype.name="jack"; var tes

Latex排版全解

Latex排版全解 LATEX(英语发音:/?le?t?k/ LAY-tek或英语发音:/?lɑ?t?k/ LAH-tek,音译"拉泰赫"),是一种基于TEX的排版系统,由美国电脑学家莱斯利?兰伯特在20世纪80年代初期开发,利用这种格式,即使用户没有排版和程序设计的知识也可以充分发挥由TEX所提供的强大功能.对于生成复杂表格和数学公式,这一点表现得尤为突出.因此它非常适用于生成高印刷质量的科技和数学类文档.这个系统同样适用于生成从简单的邮件到完整书籍的所有其他种类的文档. 和Micr

js new date详解

创建一个日期对象: var objDate=new Date([arguments list]); var ini_date=new Date(2014,7,0); //是代表7月最后一天 ,也就是2014-07-31 var ini_date=new Date(2014,7,1); //是代表8月第一天 ,也就是2014-08-01参数形式有 以下5种: new Date("month dd,yyyy hh:mm:ss");   new  Date("month dd,yy

phpEXCEL操作全解

phpExcel中文帮助手册,列举了各种属性,以及常用的操作方法,难得是每一个都用实例加以说明,希望对大家有所帮助. phpExcel中文帮助手册,不可多得的好文章,供大家学习参考. 1.设置excel的属性: 创建人 $objPHPExcel->getProperties()->setCreator("Maarten Balliauw"); 最后修改人 $objPHPExcel->getProperties()->setLastModifiedBy("

PHP漏洞全解(三)-客户端脚本植入

本文主要介绍针对PHP网站的客户端脚本植入攻击方式.所谓客户端脚本植入攻击,是指将可以执行的脚本插入到表单.图片.动画或超链接文字等对象内.当用户打开这些对象后,黑客所植入的脚本就会被执行,进而开始攻击. 客户端脚本植入(Script Insertion),是指将可以执行的脚本插入到表单.图片.动画或超链接文字等对象内.当用户打开这些对象后,攻击者所植入的脚本就会被执行,进而开始攻击. 可以被用作脚本植入的HTML标签一般包括以下几种: 1.<script>标签标记的javascript和vb

PHP漏洞全解(六)-跨网站请求伪造

本文主要介绍针对PHP网站的跨网站请求伪造.在CSRF所有攻击方式中包含攻击者伪造一个看起来是其他用户发起的 HTTP 请求,事实上,跟踪一个用户发送的 HTTP 请求才是攻击者的目的. CSRF(Cross Site Request Forgeries),意为跨网站请求伪造,也有写为XSRF.攻击者伪造目标用户的HTTP请求,然后此请求发送到有CSRF漏洞的网站,网站执行此请 求后,引发跨站请求伪造攻击.攻击者利用隐蔽的HTTP连接,让目标用户在不注意的情况下单击这个链接,由于是用户自己点击的

PHP漏洞全解(八)-HTTP响应拆分

本文主要介绍针对PHP网站HTTP响应拆分,站在攻击者的角度,为你演示HTTP响应拆分. HTTP请求的格式 1)请求信息:例如“Get /index.php HTTP/1.1”,请求index.php文件 2)表头:例如“Host: localhost”,表示服务器地址 3)空白行 4)信息正文 “请求信息”和“表头”都必须使用换行字符(CRLF)来结尾,空白行只能包含换行符,不可以有其他空格符. 下面例子发送HTTP请求给服务器www.yhsafe.com GET /index.php HT