Javascript类型系统——对日期对象的全面理解

Javascript类型系统——对日期对象的全面理解
在前面的话

日期对象在Javascript语言内置的数据类型,用于提供一个日期和时间的操作界面,数据对象被创建在转化为指定格式的基础类早期java。为此,Date类型保存的毫秒数从1月1日的utc1970零点。它可以表示1970年1月1日零点前后1亿天的时间范围,本文将详细描述日期对象的用法。

静态方法首先在引入日期对象的构造函数之前引入静态方法,因为日期对象的静态方法与构造函数有着千丝万缕的联系,使用构造函数创建日期对象的过程类似于使用静态的大衣方法。

在约会的对象有三个静态方法,这是Date.now()、Date.parse()、Date.UTC(),这些方法被称为按日期()构造函数本身,而不是通过数据实例对象

Date.now()

ecmascript5加现在()方法,它返回在1970年1月1日的0点距离UTC当前时间的毫秒数。此方法不支持传输参数

{该方法返回数字数字类型。

console.log(Date.now()); / / 1468297046050
console.log(Date.now('2016,1,1 ')); / / 1468297046050
console.log(typeof Date.now()); / /数
在不支持的浏览器(Date.now)方法、运算符可以用来转换日期对象到一个号码,和一个类似的效果可以达到。
console.log(新的日期()); / / Tue Jul 122016 12:21:33 GMT + 0800(中国标准时间)
console.log(+新的日期()); / / 1468297293433
console.log(+新的日期(2000,1,1)); / / 949334400000
这种方法经常被用来分析代码的工作
var启动= Date.now();
DoSomething();
VaR停止= Date.now();
结果=停止-开始;
Date.parse()

此方法用于解析日期字符串,该字符串是包含要解析的日期和时间的字符串,将毫秒数从1970年1月1日零点返回到给定日期。

此方法根据日期-时间字符串格式规则解析字符串的格式,并且除了标准格式之外还支持以下格式。

1,月日/年,如6 13 2004

2,月,年,如122004一月或122004月1日

3、星期日时间:分钟:二时间周二252004 00:00:00 gmt-0700

{浏览器不支持不代表时间的字符串格式。
console.log(Date.parse(6 / 13 / 2004)); / / 1087056000000
console.log(Date.parse('january 122004)); / / 1073836800000
console.log(Date.parse('tue 252004 00:00:00 gmt-0700 ')); / / 1085468400000
console.log(Date.parse('2004-05-25t00:00:00 ')); / / 1085443200000
console.log(Date.parse('2016 ')); / / 1451606400000
console.log(Date.parse('t00:00:00 ')); / /南
console.log(Date.parse()); / /南
{公告}在ecmascript5,如果我们使用标准的日期时间字符串格式规则的字符串,有前缀0之前的数学,然后它将被解析为UTC时间,而时间是没有前置的0,那么这将是解决当地时间。其他情况下一般都是解决当地时间
console.log(Date.parse(年/ 12 / 2016)); / / 1468252800000
console.log(Date.parse('2016-7-12 ')); / / 1468252800000
console.log(Date.parse('2016-07-12 ')); / / 1468281600000
Date.UTC()

Date.UTC()也返回毫秒数给定日期,但其参数不是一个字符串,但代表年,数月时间参数,一天,一分钟,二和毫秒。

Date.UTC(年,月,日,小时,分钟,秒,毫秒),年和月的参数是固定的,其余的参数是可选的,日期时间格式规则详细的在这

因为函数有7个参数,所以它的长度值是7。
console.log(日期。UTC。长度); / / 7
{该方法使用UTC时间,而不是本地时间。
console.log(date.utc(1970)); / /南
console.log(Date.UTC(1970,0)); / / 0
console.log(Date.UTC(1970,0,2)); / / 86400000
console.log(Date.UTC(1970,0,1,1)); / / 3600000
console.log(Date.UTC(1970,0,1,1,59)); / / 714000
console.log(Date.UTC(1970,0,1,1,59,30)); / / 717000
构造函数的日期()构造函数有多达5种使用方法。

{ 0 }日期()

如果没有一个新的操作符,比如函数,可以调用一个数字,它将忽略所有传入的参数,并返回当前日期和时间的字符串表示形式。
日期();
{ }因为日期()函数不使用运算符,所以它实际上不能被称为构造函数。
Console.log((日期)); / / Tue Jul 122016 13:38:41 GMT + 0800(中国标准时间)
console.log(日期('2016 / 1 / 1)); / / Tue Jul 122016 13:38:41 GMT + 0800(中国标准时间)
console.log(typeof Date()); / / 'String'
{ 1 }日期()函数使用没有参数的新操作符,并根据当前时间和日期创建一个日期对象。
新日期();
console.log(新的日期()); / / Tue Jul 122016 13:41:45 GMT + 0800(中国标准时间)
console.log(新日期); / / Tue Jul 122016 13:41:45 GMT + 0800(中国标准时间)
console.log(typeof新日期()); / / 'object
{ 2 }日期()函数可以接受一个数字参数,它代表了设定时间和1970年1月1日0点之间的毫秒数。
新日期(毫秒);
console.log(新的日期(0)); / / Thu Jan 011970 08:00:00 GMT + 0800(中国标准时间)
console.log(新的日期(86400000)); / /五月021970 08:00:00 GMT + 0800(中国标准时间)
console.log(typeof新日期(0)); / /对象
{ 3 }的日期()函数可以接受一个字符串参数,这是类似于date.parse()方法。但parse()方法返回一个数,和日期()函数返回一个对象
新的日期(DateString);

console.log(新的日期(6 / 13 / 2004)); / /孙俊132004 00:00:00 GMT + 0800(中国标准时间)
console.log(Date.parse(6 / 13 / 2004)); / / 1087056000000
console.log(typeof新日期(6 / 13 / 2004)); / /对象
console.log(typeof Date.parse(6 / 13 / 2004)); / /数量
对于标准的日期时间字符串,预处理0也是类似的date.parse()方法。如果有前缀0,则相当于UTC时间。如果不是,则相当于当地时间。其余情况一般是当地时间。
console.log(新的日期(年/ 12 / 2016)); / /二月122016日00:00:00 GMT + 0800(中国标准时间)
console.log(新的日期('2016-7-12 ')); / /二月122016日00:00:00 GMT + 0800(中国标准时间)
console.log(新的日期('2016-07-12 ')); / / Tue Jul 122016 08:00:00 GMT + 0800(中国标准时间)
{ 4 }日期()函数需要的参数类似于Date.UTC的形式()方法,但Date.UTC()方法返回一个毫秒和UTC时间和日期()函数返回一个对象,它是当地时间。
console.log(新的日期(2016,7,12)); / /五月122016日00:00:00 GMT + 0800(中国标准时间)
console.log(+新的日期(2016,7,12)); / / 1470931200000
console.log(typeof新日期(2016,7,12)); / / 'object
console.log(Date.UTC(2016,7,12)); / / 1470960000000
console.log(typeof Date.UTC(2016,7,12)); / /数
{使用参数类似Date.parse注}()函数的方法,如果约会对象超出范围时,浏览器将自动计算日期范围;使用参数类似Date.UTC()函数的方法,如果约会对象超出范围时,浏览器会提示无效的日期
console.log(新的日期(2016,7,32)); / / Thu Sep 012016 00:00:00 GMT + 0800(中国标准时间)
console.log(新的日期(2016,8,1)); / / Thu Sep 012016 00:00:00 GMT + 0800(中国标准时间)
console.log(新的日期('2016-8-32 ')); / /无效的日期
console.log(新的日期('2016-9-1 ')); / / Thu Sep 012016 00:00:00 GMT + 0800(中国标准时间)
实例方法

日期对象没有属性,可以直接读取和写入,和所有访问的日期和时间必须通过。大多数Date对象的方法分为两种形式:一是使用本地时间,另一是使用UTC时间,这是列在一起。例如,得到{ UTC }天()是代表getday同时getutcday()和()

数据对象有46种实例方法,可以分为以下3类:类、get类、集合类

{到类}

类方法从日期对象返回一个字符串来指定指定的时间。

ToString()

返回本地时区的日期字符串。

ToUTCString()

返回UTC时间的日期字符串。

ToISOString()

返回日期对象的标准日期时间字符串格式的字符串。

totimestring()

返回日期对象的时间部分的字符串。

ToJSON()

返回一个符合JSON格式的日期字符串,这是完全一样的toisostring方法的返回结果

console.log(新的日期('2016-7-12)。ToString()); / /二月122016日00:00:00 GMT + 0800(中国标准时间)
console.log(新的日期('2016-7-12)。ToUTCString()); / /星期一,2016年7月11日16:00:00 GMT
console.log(新的日期('2016-7-12)。ToISOString()); / / 2016-07-11t16:00: 00.000z
console.log(新的日期('2016-7-12)。ToDateString()); / /二月122016
console.log(新的日期('2016-7-12)。ToTimeString()); / / 00:00:00 GMT + 0800(中国标准时间)
console.log(新的日期('2016-7-12)。ToJSON()); / / 2016-07-11t16:00: 00.000z
ToLocaleString()

toString()的定位和转换方法

ToLocaleTimeString()

对totimestring定位和转换()方法

ToLocaleDateString()

对todatestring定位和转换()方法
console.log(新的日期('2016-7-12)。ToString()); / /二月122016日00:00:00 GMT + 0800(中国标准时间)
console.log(新的日期('2016-7-12)。ToLocaleString()); / / 2016 / 7 / 12上午12:00:00
console.log(新的日期('2016-7-12)。ToDateString()); / /二月122016
console.log(新的日期('2016-7-12)。ToLocaleDateString()); / / 2016 / 7 / 12
console.log(新的日期('2016-7-12)。ToTimeString()); / / 00:00:00 GMT + 0800(中国标准时间)
console.log(新的日期('2016-7-12)。ToLocaleTimeString(12) / /天);
{获取类}

日期对象提供了一系列get类方法来获取实例对象的一个方面的值。

介绍获得类的方法,先介绍()方法的价值

valueOf()

1970年1月1日的返回距离为0点的毫秒数。

因此,使用比较运算符比较日期值是很方便的。
VaR date1 =新的日期(2007,0,1);
VAR把=新日期(2007,1,1);
console.log(date1 >日期2); / /假
console.log(date1 <日期2); / /真的
GetTime()

对1970年1月1日0点返回距离的毫秒数,相同的值()

在ecmascript5,GetTime()方法可以用来实现Date.now()
date.now =函数(){
返回(新的日期()GetTime())。
}
获得当前的时区偏移信息()

返回当前时间与UTC之间的当前时区差异,以分钟为单位(8×60=480分钟),返回结果考虑到夏季时间因素。
console.log(新的日期('2016-7-12)。ValueOf()); / / 1468252800000
console.log(新的日期('2016-7-12)。GetTime()); / / 1468252800000
console.log(新的日期('2016-7-12)。GetTimezoneOffset()); / / 480
getYear()

返回1900的年数(过时)

FullYear(){ }获得UTC

回归年份(4位数)

获取UTC月份()

返回月(0-11)

获取UTC日期()

回到第二天(1-31)

获取UTC日期()

回到周(0-6)

获取UTC小时()

返回值(24小时)

获取UTC分钟()

分钟后返回值(到59)

获取UTC秒()

(二值返回到59)

获取千分之十毫秒()

返回一个毫秒值(0-999)

{一个标准日期时间格式字符串,带有参数设置的前0种形式,设置为UTC时间。
console.log(新的日期('2016-07-12t10:00)。GetYear()); / / 116
console.log(新的日期('2016-07-12t10:00)。GetFullYear()); / / 2016
console.log(新的日期('2016-07-12t10:00)。GetUTCFullYear()); / / 2016
console.log(新的日期('2016-07-12t10:00)。GetMonth()); / / 6
console.log(新的日期('2016-07-12t10:00)。GetUTCMonth()); / / 6
console.log(新的日期('2016-07-12t10:00)。GetDate()); / / 12
console.log(新的日期('2016-07-12t10:00)。GetUTCDate()); / / 12
console.log(新的日期('2016-07-12t10:00)。GetDay()); / / 2
console.log(新的日期('2016-07-12t10:00)。GetUTCDay()); / / 2
console.log(新的日期('2016-07-12t10:00)。GetHours()); / / 18
console.log(新的日期('2016-07-12t10:00)。GetUTCHours()); / / 10
console.log(新的日期('2016-07-12t10:00)。GetMinutes()); / / 0
console.log(新的日期('2016-07-12t10:00)。GetUTCMinutes()); / / 0
console.log(新的日期('2016-07-12t10:00)。GetSeconds()); / / 0
console.log(新的日期('2016-07-12t10:00)。GetUTCSeconds()); / / 0
console.log(新的日期('2016-07-12t10:00)。GetMilliseconds()); / / 0
console.log(新的日期('2016-07-12t10:00)。GetUTCMilliseconds()); / / 0
现在的时间是16:35。
console.log(新的日期()GetHours())); / / 16
console.log(新的日期()GetUTCHours())); / / 8
{集合}

日期对象提供了一系列用于设置实例对象所有方面的集合类方法。

这套方法所对应的基本的获得方法,并通过参数设置方法类似于date.utc(),并返回该调整日期内毫秒。

{注意}只能获得一周,不能设置。

时间()

使用毫秒格式,设置日期对象的值。
var a新的日期('2016-07-12t10:00);
console.log(d.settime(86400000),D); / / 86400000五月021970 08:00:00 GMT + 0800(中国标准时间)
设置年份()

设立一年(过时)
var a新的日期('2016-07-12t10:00);
console.log(d.setyear(2000),D,d.getyear()); / / 963396000000 Wed Jul 122000 18:00:00 GMT + 0800(中国标准时间)100
集合{ } FullYear(UTC)

设置年份(4位数)和可选月份值和日期值。

设置UTC月份()

设定一个月(0-11),和可选的日期值

设置UTC日期()

成立几天(1-31)
var a新的日期('2016-07-12t10:00);
console.log(d.setfullyear(2015,1,1),d.getfullyear()); / / 1422784800000 2015
console.log(d.setmonth(2),d.getmonth()); / / 1425204000000 2
console.log(d.setdate(20),d.getdate()); / / 1426845600000 20
console.log(d.tolocalestring()); / / 2015 / 3 / 20点6:00:00
设置UTC小时()

一个小时的价值(0-23),和一个可选的分钟值,第二值,一毫秒的价值

设置UTC分钟()

设定一分钟的价值(到59),和一个可选的二值和一毫秒的价值

设置UTC秒()

将二值(到59),和可选的毫秒值

设置千分之一毫秒()

设置毫秒值(0-999)
var a新的日期('2016-07-12t10:20:30);
console.log(d.sethours(1,2,3),d.gethours()); / / 1468256523000 1
console.log(d.setminutes(2,3),d.getminutes()); / / 1468256523000 2
console.log(d.setseconds(3),d.getseconds()); / / 1468256523000 3
console.log(d.tolocaletimestring)(1:02:03)/上午
var a新的日期('2016-07-12t10:20:30);
console.log(d.setutchours(1,2,3),d.gethours()); / / 1468285323000 9
console.log(d.setutcminutes(2,3),d.getminutes()); / / 1468285323000 2
console.log(d.setutcseconds(3),d.getseconds()); / / 1468285323000 3
console.log(d.tolocaletimestring)(9:02:03)/上午
以上Javascript类型系统——全面理解日期对象是萧边分享你的全部内容。我希望能给你一个参考,希望你能支持它。
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部