`

JavaScript的Date时间数据类型整理

阅读更多

本文主要整理了js的Date(日期)类型数据得一些用法,也算是对自己学习的一个总结。

  1. Date():返回当前时间的字符串(基于本地时区),不管传入什么参数,返回的只是一个单纯的字符串而已,并没有getDay()、getMonth()等方法
    Date();
    Date(666);
    Date('ppp');
    //Sun May 08 2016 14:35:59 GMT+0800 (中国标准时间)
     
  2. new Date():根据参数来返回对应的值,无参数的时候,返回当前时间的字符串形式(一个日期对象),有getDay()等方法
    //1.不传参数:
    new Date();//返回当前时间(基于本地时区):Sun May 08 2016 15:18:03 GMT+0800
    //2.传入时间的毫秒数,可以使用Date.parse()和Date.UTC()来获得自定义时间的毫秒
    
    数
    new Date(Date.parse("12/13/2020"));//返回Sun Dec 13 2020 00:00:00 GMT+0800
    new Date(Date.UTC(2020,11,13);//返回GMT时间Sun Dec 13 2020 08:00:00 GMT+0800
    //3.直接传入日期:
    new Date(2016,0);//基于本地时区2016年1月1日零时
    new Date(2016,5,8,13,42,26);//基于本地时区2016年6月8号13时42分26秒
     
  3. 常用的一些方法:
  • Date.parse()和Date.UTC():返回传入的时间对应的毫秒数(从1970年1月1日零时算起)
    Date.parse("12/13/2020");//返回1607788800000
    Date.UTC(2020,11,13,0,0,0);//返回GMT时间(比本地多8小时)的毫秒数1607817600000
    两者参数规则的不同:
    Date.parse()方法接收一个表示日期的字符串参数,例如要表示2016年10月16号对应的毫秒数,可以 这样做:Date.parse("10/16/2016")或Date.parse("2016/10/16"),也可以写成Date.parse("2016-10-16"),但是只在chrome中才会返回数据,如果传入的字符串不能表示日期,那么它会返回NaN,看起来很简单是吧,但实际上此方法的行为因实现而异,而且通常  是因地区而异,用兴趣的童鞋可以查阅相关资料了解一下。
    Date.UTC()的参数分别是年份、基于0的月份(一月是0;二月是1,以此类推)、月中的哪一天(1到31)、小时数(0到23)、分钟、秒以及毫秒数。在这些参数中,只有前两个参数(年和月)是必须的。如果没有提供月中的天数,则假设天数为1;如果省略其他参数,则统统假设为0。
  • Date.now():和调用Date构造函数而不传参的情况十分类似,是ECMAScript5新增的方法,返回表示调用这个方法时的日期和时间的毫秒数,兼容IE9+、Firefox 3+、Opera 10.5和chrome。
  • 日期/时间组件方法
    setFullYear(年)/setUTCFullYear(年)
    ;//设置日期中的年数

    setMonth(月)/setUTCMonth(月);//设置日期中的月数
    setDate(日)/setUTCDate(日);//设置日期中的日数
    setHour(时)/setUTCHour(时);//设置日期中的小时数
    setMinutes(分)/setUTCMinutes(分);//设置日期中的分钟数
    setSeconds(秒)/setUTCSeconds(秒);//设置日期中的秒数
    setMilliseconds(毫秒)/setUTCMilliseconds(毫秒);//设置日期中的毫秒数
    setTime(毫秒);//以毫秒数设置日期,会改变整个日期
    var dd=new Date(2016,4,8,17,3,46,600);//2016年5月8号17时3分46秒600毫秒
    
    	dd.setDate(16);//将日期的天数变为16|Mon May 16 2016 17:03:46 GMT+0800
    
    	dd.setUTCDate(17);//再将UTC日期的天数变为17|Tue May 17 2016 17:03:46 GMT+0800
    
    	dd.setHours(18);//再将日期的小时数变为18|Tue May 17 2016 18:03:46 GMT+0800
    
    	dd.setUTCHours(25);//参数大小超过了24,所以加一天,小时数变为1,转换为GMT时间再加8小时|Wed May 18 2016 09:03:46 GMT+0800
    
var myDate=new Date();
myDate.getYear() || myDate.getUTCYear()      
//获取当前年份(2位或3位)

myDate.getFullYear() ||myDate.getUTCFullYear()   //获取完整的年份(4位,1970-????)
myDate.getMonth() || myDate.getUTCMonth()     //获取当前月份(0-11,0代表1月)
myDate.getDate() ||   myDate.getUTCDate()     //获取当前日(1-31)
myDate.getDay()  ||  myDate.getUTCDay()     //获取当前星期X(0-6,0代表星期天)
myDate.getTime() ||   myDate.getUTCTime()    //获取当前时间(从1970.1.1开始的毫秒数)
myDate.getHours() ||    myDate.getUTCHours()  //获取当前小时数(0-23)
myDate.getMinutes() ||  myDate.getUTCMinutes() //获取当前分钟数(0-59)
myDate.getSeconds()  ||  myDate.getUTCSeconds()  //获取当前秒数(0-59)
myDate.getMilliseconds()  || myDate.getUTCMilliseconds()  //获取当前毫秒数(0-999)
var dd=new Date();//Sun May 08 2016 19:36:03 GMT+0800
	var dd1=dd.getFullYear();//2016
	var dd2=dd.getYear();//116
	var dd3=dd.getMonth();//4
	var dd4=dd.getUTCHours();//11
 
  • 继承的方法
    toLocaleString();//返回浏览器设置的时区的日期和时间(会包含AM或PM,但不包含时区)
    toString();//返回带有时区的日期和时间(时间一般为24小时格式)
    valueOf();//返回日期的毫秒数表示
    var dd=new Date();
    	var dd1=dd.toLocaleString();//2016/5/8 下午7:30:23
    	var dd2=dd.toString();//Sun May 08 2016 19:30:23 GMT+0800
    	var dd3=dd.valueOf();//1462707023915
     
  • 日期格式化方法
    toDateString();
    //以特定于实现的格式显示星期、月、日、年
    toTimeString();
    //以特定于实现的格式显示时分秒和时区
    toLocaleDateString();
    //以特定于地区的格式显示星期、月、日、年
    toLocaleTimeString();
    //以特定于地区的格式显示时分秒
    toUTCString();
    //以特定于实现的格式显示完整的UTC日期
    var dd=new Date();//Sun May 08 2016 19:14:36 GMT+0800
    	var dd1=dd.toDateString();//Sun May 08 2016
    	var dd2=dd.toTimeString();//19:14:36 GMT+0800 (中国标准时间)
    	var dd3=dd.toLocaleDateString();//2016/5/8
    	var dd4=dd.toLocaleTimeString();//下午7:14:36
    	var dd5=dd.toUTCString();//Sun, 08 May 2016 11:14:36 GMT
 
参考自JavaScript高级程序设计【第三版】
分享到:
评论

相关推荐

    JavaScript语言精粹经典实例(整理篇)

    数据类型 JavaScript 是 弱类型 语言,但并不是没有类型,JavaScript可以识别下面 7 种不同类型的值: 基本数据类型 1.Boolean 2.Number 3.String 4.null 5.undefined 6.Symbol Object 1.Array 2.RegExp 3.Date 4...

    JavaScript学习笔记整理之引用类型

    Object是一个基础类型,Array是数组类型,Date是日期类型,RegExp是正则表达式类型,等。 拥抱JavaScript 曾经名不经传的JavaScript随着AJAX的流行而身价倍增,现在JavaScript不再仅仅是WEB开发中一个可有可无的...

    BAT及各大互联网公司2014前端笔试面试题:JavaScript篇

    很多面试题是我自己面试BAT亲身经历碰到的。...基本数据类型:String,boolean,Number,Undefined,Null引用数据类型:Object(Array,Date,RegExp,Function)那么问题来了,如何判断某变量是否为数组数据类型

    Java学习笔记-个人整理的

    {1.4}数据类型}{23}{section.1.4} {1.4.1}整数与浮点数}{23}{subsection.1.4.1} {1.4.1.1}浮点数原理}{24}{subsubsection.1.4.1.1} {1.4.2}格式化输出浮点数}{24}{subsection.1.4.2} {1.4.3}\texttt {char}}{24...

    PHP和MySQL WEB开发(第4版)

    9.10 选择列数据类型 9.10.1 数字类型 9.10.2 日期和时间类型 9.10.3 字符串类型 9.11 进一步学习 9.12 下一章 第10章 使用MySQL数据库 10.1 SQL是什么 10.2 在数据库中插入数据 10.3 从数据库中获取数据 10.3.1 ...

    PHP和MySQL Web开发第4版pdf以及源码

    9.10 选择列数据类型 9.10.1 数字类型 9.10.2 日期和时间类型 9.10.3 字符串类型 9.11 进一步学习 9.12 下一章 第10章 使用MySQL数据库 10.1 SQL是什么 10.2 在数据库中插入数据 10.3 从数据库中获取数据 ...

    PHP和MySQL Web开发第4版

    9.10 选择列数据类型 9.10.1 数字类型 9.10.2 日期和时间类型 9.10.3 字符串类型 9.11 进一步学习 9.12 下一章 第10章 使用MySQL数据库 10.1 SQL是什么 10.2 在数据库中插入数据 10.3 从数据库中获取数据 ...

    js使用小技巧

    获得时间所代表的微秒 var n1 = new Date("2004-10-10".replace(/-/g, "/")).getTime() 窗口是否关闭 win.closed checkbox扁平 ; clip:rect(5px 15px 15px 5px)"> 获取选中内容 document.selection....

    网管教程 从入门到精通软件篇.txt

    Date CAD Windows帮助文件 HPP:C++程序头文件 HQX:Macintosh BinHex 4.0文件 HT:HyperTerminal(超级终端) HTM,HTML:超文本文档 HTT:Microsoft超文本模板 HTX:扩展HTML模板 I ICO:Windows图标 IDX...

    计算机应用技术(实用手册)

    这个项目可控制DRAM读取指令与数据成为真正可用的时间之间的延迟时间。较低的CAS周期能减少内存的潜伏周期以提高内存的工作效率。因此只要能够稳定运行操作系统,我们应当尽量把CAS参数调低,从而提高内存的运行速度...

Global site tag (gtag.js) - Google Analytics