在 JavaScript 中,你可以使用 Date 对象来获取 当前日期 和 当前时间、当前年份。

在 JavaScript 中,你可以使用 Date 对象来获取 当前日期当前时间,以下是具体方法和示例代码:


1. 获取当前日期

使用 Date 对象的方法获取 年、月、日,并可以格式化为常见的日期字符串。

方法:
复制代码
const now = new Date(); // 创建 Date 对象,包含当前日期和时间

// 获取年、月、日(注意月份从 0 开始,需要 +1)
const year = now.getFullYear();  // 2025(四位年份)
const month = now.getMonth() + 1; // 6(实际是 6 月,但 getMonth() 返回 5)
const day = now.getDate();       // 9(当月的第几天)

// 格式化为 YYYY-MM-DD
const formattedDate = `${year}-${month.toString().padStart(2, '0')}-${day.toString().padStart(2, '0')}`;
console.log(formattedDate); // 输出:2025-06-09

2. 获取当前时间

使用 Date 对象的方法获取 时、分、秒、毫秒,并可格式化为时间字符串。

方法:
复制代码
const hours = now.getHours();     // 当前小时(0-23)
const minutes = now.getMinutes(); // 当前分钟(0-59)
const seconds = now.getSeconds(); // 当前秒(0-59)

// 格式化为 HH:MM:SS
const formattedTime = `${hours.toString().padStart(2, '0')}:${minutes.toString().padStart(2, '0')}:${seconds.toString().padStart(2, '0')}`;
console.log(formattedTime); // 例如:14:30:45(根据当前时间)

3. 同时获取日期和时间

可以直接用 toLocaleString() 或自定义格式组合:

示例:
复制代码
// 方法1:使用 toLocaleString(依赖系统区域设置)
console.log(now.toLocaleString()); // 输出:2025/6/9 14:30:45(格式可能因系统而异)

// 方法2:自定义拼接
console.log(`当前时间:${formattedDate} ${formattedTime}`); // 输出:2025-06-09 14:30:45

4. 其他常用方法

  • now.toISOString() → 返回 ISO 格式的日期时间(UTC 时区),例如 "2025-06-09T06:30:45.000Z"

  • now.toLocaleDateString() → 仅返回本地格式的日期(如 "2025/6/9")。

  • now.toLocaleTimeString() → 仅返回本地格式的时间(如 "14:30:45")。

    const now = new Date();

    // 获取日期
    const date = ${now.getFullYear()}-${(now.getMonth() + 1).toString().padStart(2, '0')}-${now.getDate().toString().padStart(2, '0')};

    // 获取时间
    const time = ${now.getHours().toString().padStart(2, '0')}:${now.getMinutes().toString().padStart(2, '0')}:${now.getSeconds().toString().padStart(2, '0')};

    console.log(当前日期:${date}); // 2025-06-09
    console.log(当前时间:${time}); // 14:30:45
    console.log(日期和时间:${date} ${time}); // 2025-06-09 14:30:45

注意事项:

  • 月份从 0 开始getMonth() 返回 0(1月)到 11(12月),所以需要 +1

  • 补零操作 :用 padStart(2, '0') 确保个位数显示为 0102 等。

  • 时区问题 :以上方法均基于用户本地时区,如需 UTC 时间,可用 getUTC 系列方法(如 getUTCHours())。

如果需要更复杂的日期处理(如加减日期、时区转换),推荐使用库如 moment.jsdate-fns

相关推荐
收破烂的小熊猫~7 分钟前
《Java修仙传:从凡胎到码帝》第四章:设计模式破万法
java·开发语言·设计模式
烛阴20 分钟前
void 0 的奥秘:解锁 JavaScript 中 undefined 的正确打开方式
前端·javascript
nananaij37 分钟前
【Python进阶篇 面向对象程序设计(3) 继承】
开发语言·python·神经网络·pycharm
初遇你时动了情37 分钟前
腾讯地图 vue3 使用 封装 地图组件
javascript·vue.js·腾讯地图
dssxyz41 分钟前
uniapp打包微信小程序主包过大问题_uniapp 微信小程序时主包太大和vendor.js过大
javascript·微信小程序·uni-app
阿蒙Amon1 小时前
为什么 12 版仍封神?《C# 高级编程》:从.NET 5 到实战架构,进阶者绕不开的必修课
开发语言·c#
无小道1 小时前
c++-引用(包括完美转发,移动构造,万能引用)
c语言·开发语言·汇编·c++
爱莉希雅&&&1 小时前
技术面试题,HR面试题
开发语言·学习·面试
开开心心_Every2 小时前
便捷的Office批量转PDF工具
开发语言·人工智能·r语言·pdf·c#·音视频·symfony
ohMyGod_1233 小时前
React16,17,18,19新特性更新对比
前端·javascript·react.js