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

作者:代码拾荒

时间:2026-10-23

浏览:370

本文详细介绍JavaScript中Date对象的功能与用法,涵盖构造函数、静态方法(如now、parse、UTC)及实例方法(获取与设置时间)。通过具体示例解析时间戳转换、本地时间与UTC时间的处理,帮助开发者掌握日期时间操作的核心技巧。

文章目录

本文通过具体实例解析JavaScript中Date对象的功能与用法,供读者参考学习。

Date实例主要用于处理日期和时间数据。该对象基于自1970年1月1日(世界标准时间)起经过的毫秒数进行计算。

JavaScript的Date对象提供了多种UTC(协调世界时)相关方法,同时也支持获取当地时间。UTC即格林威治时间标准,而当地时间则取决于执行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()方法根据本地时间,返回指定日期对象的毫秒数。该方法返回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程序设计有所帮助。

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章