JavaScript Date对象功能与用法学习记录

所属分类: 网络编程 / JavaScript 阅读数: 1671
收藏 0 赞 0 分享

本文实例讲述了JavaScript Date对象功能与用法。分享给大家供大家参考,具体如下:

Date 实例用来处理日期和时间。Date对象基于1970年1月1日(世界标准时间)起的毫秒数。

JavaScript 的Date对象提供了数个UTC时间的方法,也相应提供了当地时间的方法。UTC,也就是我们所说的格林威治时间,指的是time中的世界时间标准。而当地时间则是指执行JavaScript的客户端电脑所设置的时间。

Date 构造函数

new Date();
//Sun Jan 06 2019 20:18:04 GMT+0800 (中国标准时间)

new Date(value); 
//value 代表自1970年1月1日00:00:00 (世界标准时间) 起经过的毫秒数。
new Date(000000000000);

//Thu Jan 01 1970 08:00:00 GMT+0800 (中国标准时间)

new Date(dateString);
//dateString表示日期的字符串值。该字符串应该能被 Date.parse() 方法识别
new Date("2019.01.01");
//Tue Jan 01 2019 00:00:00 GMT+0800 (中国标准时间)

new Date(year, month[, day[, hour[, minutes[, seconds[, milliseconds]]]]]);

//year代表年份的整数值。为了避免2000年问题最好指定4位数的年份; 使用 1998, 而不要用 98.
//month代表月份的整数值从0(1月)到11(12月)。
//day代表一个月中的第几天的整数值,从1开始。
//hour代表一天中的小时数的整数值 (24小时制)。
// minute分钟数。
// second秒数。
//millisecond表示时间的毫秒部分的整数值。

new Date(2019,01,01,01,01,01);

//Fri Feb 01 2019 01:01:01 GMT+0800 (中国标准时间)

Date方法

Date.now()

返回自 1970-1-1 00:00:00 UTC (世界标准时间)至今所经过的毫秒数,类型为Number。

Date.now()
//1546777708417

Date.parse()

解析一个表示日期的字符串,并返回从 1970-1-1 00:00:00 所经过的毫秒数。

Date.parse("2019.01.01")
//1546272000000

Date.parse('01 Jan 1970 00:00:00 GMT');
//0

Date.UTC()

接受和构造函数最长形式的参数相同的参数(从2到7),并返回从 1970-01-01 00:00:00 UTC 开始所经过的毫秒数。

  • year:1900 年后的某一年份。
  • month:0 到 11 之间的一个整数,表示月份。
  • date:1 到 31 之间的一个整数,表示某月当中的第几天。
  • hrs:0 到 23 之间的一个整数,表示小时。
  • min:0 到 59 之间的一个整数,表示分钟。

sec 0 到 59 之间的一个整数,表示秒。

ms

0 到 999 之间的一个整数,表示毫秒。

new Date(Date.UTC(2019, 0, 0, 0, 0, 1));
//Mon Dec 31 2018 08:00:01 GMT+0800 (中国标准时间)

时间戳格式转换

 dateFormmat(time) {
 let date = new Date(time * 1000); //如果date为13位不需要乘1000
 let Ye = date.getFullYear() + '/';
 let Mo =
  (date.getMonth() + 1 < 10
  ? '0' + (date.getMonth() + 1)
  : date.getMonth() + 1) + '/';
 let Da =
  (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' ';
 let hh =
  (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':';
 let mm =
  (date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes()) +
  ':';
 let ss =
  date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds();
 return Ye + Mo + Da +hh + mm + ss
 }
 
//let value=dateFormmat(1234567890)
//console.log(value)
//2009/02/14 07:31:30

Date 实例-(get)

所有的 Date 实例都继承自 Date.prototype。修改 Date 构造函数的原型对象会影响到所有的 Date 实例。

Date.getDate()

根据本地时间,返回一个指定的日期对象为一个月中的第几天。getDate() 返回一个1 到 31的整数值

let date = new Date("December 25, 2019 11:11:00");
let day = date.getDate();

console.log(day)
//25

Date.getDay()
getDay() 返回一个整数值: 0 代表星期日, 1 代表星期一,2 代表星期二, 依次类推

Date.getFullYear()
getFullYear() 方法根据本地时间返回指定日期的年份。

Date.getMonth()
根据本地时间,返回一个指定的日期对象的月份,为基于0的值(0表示一年中的第一月)。

Date.getHours()
getHours() 方法根据本地时间,返回一个指定的日期对象的小时。getHours返回一个0 到 23之间的整数值。

Date.getMinutes()
getMinutes() 方法根据本地时间,返回一个指定的日期对象的分钟数。getMinutes 返回一个0 到 59的整数值

Date.getSeconds()
getSeconds() 方法根据本地时间,返回一个指定的日期对象的秒数,返回一个 0 到 59 的整数值。

Date.getMilliseconds()
getMilliseconds() 方法,根据本地时间,返回一个指定的日期对象的毫秒数。getMilliseconds() 方法返回一个0 到 999的整数。

Date.getTime()
getTime 方法的返回值一个数值,表示从1970年1月1日0时0分0秒(UTC,即协调世界时)距离该日期对象所代表时间的毫秒数。

Date 实例-(set)

Date.setDate()
setDate() 方法根据本地时间来指定一个日期对象的天数。
如果 dayValue 超出了月份的合理范围,setDate 将会相应地更新 Date 对象。例如,如果为 dayValue 指定0,那么日期就会被设置为上个月的最后一天。

Date.setFullYear()
setFullYear() 方法根据本地时间为一个日期对象设置年份
如果有一个参数超出了合理的范围,setFullYear 方法会更新其他参数值,日期对象的日期值也会被相应更新。 例如,为 monthValue 指定 15, 则年份会加1,月份值会为3。

Date.setHours()
setHours() 方法根据本地时间为一个日期对象设置小时数,返回从1970-01-01 00:00:00 UTC 到更新后的 日期 对象实例所表示时间的毫秒数。

如果有一个参数超出了合理范围,setHours 会相应地更新日期对象中的日期信息。例如,如果为 secondsValue 指定了 100,则分钟会加 1,然后秒数使用 40。

Date.setMilliseconds()
setMilliseconds() 方法会根据本地时间设置一个日期对象的豪秒数。

如果指定的数字超出了合理范围,则日期对象的时间信息会被相应地更新。例如,如果指定了 1005,则秒数加 1,豪秒数为 5。

Date.setMinutes()
setMinutes() 方法根据本地时间为一个日期对象设置分钟数。

如果有一个指定的参数超出了合理范围,setMinutes 会相应地更新日期对象中的时间信息。例如,为 secondsValue 指定 100,分钟数将会加 1,而秒数会为 40。

Date.setMonth()
setMonth() 方法根据本地时间为一个设置年份的日期对象设置月份

如果有一个指定的参数超出了合理范围,setMonth 会相应地更新日期对象中的日期信息。例如,为 monthValue 指定 15,则年份会加 1,月份将会使用 3。

Date.setSeconds()
setSeconds() 方法根据本地时间设置一个日期对象的秒数。

如果一个参数超出了合理范围, setSeconds 方法会相应地更新日期对象的时间信息。例如,为 secondsValue 指定 100,则日期对象的分钟数会相应地加 1,秒数将会使用 40。

Date.setTime()
setTime() 方法以一个表示从1970-1-1 00:00:00 UTC计时的毫秒数为来为 Date 对象设置时间。

希望本文所述对大家react程序设计有所帮助。

更多精彩内容其他人还在看

js单独获取一个checkbox看其是否被选中

这篇文章主要与大家分享js获取一个checkbox看其是否被选中的具体实现,很简单,但很实用,需要的朋友可以参考下
收藏 0 赞 0 分享

js变量、作用域及内存详解

本文主要详细分析了JS变量,作用域以及内存问题,同时附上非常多的实例,方便大家理解这3个概念,是篇不可多得的文章,希望对大家有所帮助
收藏 0 赞 0 分享

深入理解javascript作用域和闭包

作用域和作用域链是javascript中非常重要的特性,对于他们的理解直接关系到对于整个javascript体系的理解,而闭包又是对作用域的延伸,也是在实际开发中经常使用的一个特性,实际上,不仅仅是javascript,在很多语言中都提供了闭包的特性。
收藏 0 赞 0 分享

IE6 hack for js 集锦

本文主要讲诉了使用js实现网站功能兼容IE6,非常的实用的小技巧,有需要的朋友可以参考下
收藏 0 赞 0 分享

Javascript的setTimeout()使用闭包特性时需要注意的问题

这篇文章主要介绍了Javascript的setTimeout(0)使用闭包特性时需要注意的问题,需要的朋友可以参考下
收藏 0 赞 0 分享

常用的jquery模板插件——jQuery Boilerplate介绍

Query Boilerplate是一个不错的jQuery插件开发工具,使用这个工具可以帮助你快速的构建一个jQuery框架。这个工具提供你很多评论用以帮助你使得开发变得简单和直接,它是个真正的面对对象的工具,你可以实现公开或者私有的方法或者公开或者私有的属性。
收藏 0 赞 0 分享

深入理解javascript构造函数和原型对象

对象,是javascript中非常重要的一个梗,是否能透彻的理解它直接关系到你对整个javascript体系的基础理解,说白了,javascript就是一群对象在搅。。(哔!)。
收藏 0 赞 0 分享

深入理解javascript原型链和继承

这篇文章主要介绍了javascript原型链和继承的概念,以及使用原型链实现继承、经典继承、组合式继承、寄生组合式继承。非常实用,是篇非常不错的文章,这里推荐给大家。
收藏 0 赞 0 分享

再探JavaScript作用域

这篇文章主要介绍了再探JavaScript作用域,本文用简洁的语言和直观的测试结果图片给大家讲解JavaScript的作用域,需要的朋友可以参考下
收藏 0 赞 0 分享

JavaScript获取图片真实大小代码实例

这篇文章主要介绍了JavaScript获取图片真实大小代码实例,本文使用onload事件来获取图片的真实大小,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多