上一节我们学习了String对象,本节我们继续学习JS中处理日期和时间的内置对象——Date对象。
Date对象用于处理日期和时间,包括创建、格式化、计算等操作。
1. 创建Date对象的语法:
let date = new Date(); // 创建当前时间的Date对象
2. 如何创建?
/* 完整的多种创建方式: */
let date1 = new Date(); // 当前时间
let date2 = new Date('2025-11-14'); // 日期字符串
let date3 = new Date(2025, 10, 14); // 年,月,日 (月份从0开始)
let date4 = new Date(1742000000000); // 时间戳
let date5 = new Date(2025, 10, 14, 15, 30, 0); // 年,月,日,时,分,秒3. Date对象有哪些静态属性:
| 函数/内置变量 | 说明 |
|---|---|
| Date.prototype | Date 对象的原型,用于向所有 Date 实例添加属性和方法 |
4. Date对象有哪些静态方法:
| 函数/内置变量 | 说明 |
|---|---|
| Date.now() | 返回当前时间的时间戳 |
| Date.parse() | 解析日期字符串,返回时间戳 |
| Date.UTC() | 返回指定UTC日期的时间戳 |
工作时,我们通常使用Date.now()来获取当前时间戳,用于性能测量或唯一标识。
const time = Date.now(); // 获取当前时间的时间戳(从1970年1月1日至今的毫秒数)
// 通过Date对象解析时间戳,转换为可读的日期时间格式
const now = new Date(time);
// 获取小时数 -> 转字符串 -> 补0到2位数(确保显示为01, 02等格式)
const hours = now.getHours().toString().padStart(2, '0');
// 获取分钟数 -> 转字符串 -> 补0到2位数
const minutes = now.getMinutes().toString().padStart(2, '0');
// 获取秒数 -> 转字符串 -> 补0到2位数
const seconds = now.getSeconds().toString().padStart(2, '0');
console.log(`当前时间: ${hours}:${minutes}:${seconds}`);5. Date对象有哪些实例方法:
| 函数/内置变量 | 说明 |
|---|---|
| getFullYear() | 获取年份(四位数) |
| getMonth() | 获取月份(0-11) |
| getDate() | 获取月份中的天数(1-31) |
| getDay() | 获取星期几(0-6) |
| getHours() | 获取小时(0-23) |
| getMinutes() | 获取分钟(0-59) |
| getSeconds() | 获取秒数(0-59) |
| getMilliseconds() | 获取毫秒(0-999) |
| getTime() | 获取时间戳 |
| setFullYear() | 设置年份 |
| setMonth() | 设置月份 |
| setDate() | 设置月份中的天数 |
| setHours() | 设置小时 |
| setMinutes() | 设置分钟 |
| setSeconds() | 设置秒数 |
| setMilliseconds() | 设置毫秒 |
| setTime() | 设置时间戳 |
| toString() | 返回完整的日期时间字符串 |
| toDateString() | 返回日期部分的字符串 |
| toTimeString() | 返回时间部分的字符串 |
| toISOString() | 返回ISO格式的字符串 |
| toLocaleDateString() | 返回本地格式的日期字符串 |
| toLocaleTimeString() | 返回本地格式的时间字符串 |
| toLocaleString() | 返回本地格式的完整日期时间字符串 |
这里有很多常用函数,比如工作时,我们通常会使用这些方法来进行日期处理和格式化。
/* Date应用方法 */ const time = new Date(); // 获取时间分量 console.log(time.getFullYear()); // 2025 console.log(time.getMonth()+1); // 11月(JS里月份是从0开始,故要+1) console.log(time.getDate()); // 14日 console.log(time.getDay()); // 5(星期五) // 格式化输出 console.log(time.toString()); // Fri Nov 14 2025 18:14:34 GMT+0800(中国标准时间) console.log(time.toDateString()); // Fri Nov 14 2025 console.log(time.toISOString()); // 2025-11-14T10:14:34.507Z // 本地化格式 console.log(time.toLocaleDateString()); // 2025/11/14 console.log(time.toLocaleTimeString()); // 18:14:34
总结:本节我们主要介绍了JS中的Date对象,包括它的创建方式、静态方法、实例方法以及实际应用场景。日期时间处理在Web开发中非常常见,掌握Date对象的使用对于开发时间相关的功能至关重要。
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程