信息发布→ 登录 注册 退出

javascript如何操作日期_Date对象有哪些常用方法

发布时间:2025-12-22

点击量:
JavaScript Date对象基于毫秒时间戳,创建用new Date(),获取/设置方法对应年月日时分秒(注意月份0起始),set类方法修改原对象;格式化可用toJSON()/toLocaleString()等,比较直接用>或减法得毫秒差。

JavaScript 中的 Date 对象用来处理日期和时间,核心是“基于毫秒的时间戳”,所有方法都围绕这个展开。掌握几个关键方法,就能应对大部分日常需求。

创建和获取日期信息

new Date() 创建当前时间;也可传入字符串(如 "2025-05-20")、年月日参数(注意:月份从 0 开始!)、或时间戳(毫秒数)来创建指定时间。

常用获取方法:

  • getFullYear() —— 获取四位年份(推荐,不用 getYear()
  • getMonth() —— 获取月份(0~11,记得 +1 才是真实月份)
  • getDate() —— 获取当月第几天(1~31)
  • getDay() —— 获取星期几(0=周日,1=周一…)
  • getHours() / getMinutes() / getSeconds() / getMilliseconds() —— 各级时间单位

设置日期和时间

对应获取方法,都有以 set 开头的设置方法,比如:

  • setFullYear(2025)setMonth(5)(6月)、setDate(15)
  • setHours(14, 30, 0) 可同时设时分秒
  • 直接改时间戳:setTime(1716212345000),最灵活也最底层

注意:这些方法会**修改原 Date 对象**(不是返回新对象),适合需要复用同一实例的场景。

格式化与转换(不依赖库的轻量方案)

浏览器内置方法适合简单展示:

  • toString() —— 全信息字符串(含时区,可读但不规范)
  • toDateString() —— 仅日期部分,如 "Mon May 20 2025"
  • toLocaleDateString("zh-CN") —— 中文本地化,支持选项控制年月日顺序
  • toISOString() —— 返回标准 ISO 格式字符串(UTC 时间),如 "2025-05-20T08:30:00.000Z",常用于 API 通信

想输出 "2025-05-20 14:30:00" 这类格式?建议手动拼接,用 padStart(2, '0') 补零更可控。

计算与比较

Date 对象可以直接用 > 比较大小(本质是比时间戳):

  • date1 > date2 → 判断先后
  • date2.getTime() - date1.getTime() → 得到毫秒差,再换算成天/小时等
  • 例如算相差天数:Math.floor((date2 - date1) / (1000 * 60 * 60 * 24))

注意:减法运算符会自动调用 valueOf(),返回时间戳,所以 date2 - date1 是合法且常用的写法。

基本上就这些。Date 对象不复杂,但容易忽略月份从 0 开始、时区影响、以及 set 方法会改变原对象这些细节。

标签:# javascript  # java  # js  # json  # 浏览器  # 本地化  # 2025  
在线客服
服务热线

服务热线

4008888355

微信咨询
二维码
返回顶部
×二维码

截屏,微信识别二维码

打开微信

微信号已复制,请打开微信添加咨询详情!