Date对象是JavaScript处理日期时间的核心,支持创建(如new Date()、ISO字符串、年月日参数、时间戳)、获取(getFullYear、getMonth等)、设置(setFullYear、setTime等)及格式化(toISOString最推荐)操作。
Date 对象是 JavaScript 中处理日期和时间的核心工具。它能表示特定时刻(精确到毫秒),也支持创建、解析、格式化和计算时间。
你可以用不同参数初始化一个 Date 对象:
new Date()
new Date('2025-06-15') 或 new Date('Jun 15 2025 14:30:00')(注意格式兼容性,推荐 ISO 格式)new Date(2025, 5, 15, 14, 30) 表示 2025 年 6 月 15 日 14:30(注意月份从 0 起)new Date(1718433000000)
这些方法返回本地时区的值(除非特别注明):
getFullYear():四位年份,如 2025
getMonth():月份(0–11),需 +1 才是常规月份getDate():当月第几天(1–31)getDay():星期几(0=周日,1=周一…)getHours() / getMinutes() / getSeconds() / getMilliseconds()getTime():返回自 1970-01-01 00:00:00 UTC 起的毫
秒数(即时间戳)getTimezoneOffset():返回本地时区与 UTC 的偏移分钟数(东八区为 -480)用于修改 Date 实例内部的时间值:
setFullYear(2025)、setMonth(0)、setDate(25) 等setHours(10, 30, 0) 支持链式传参(时、分、秒、毫秒)setTime(1718433000000) 直接设为指定时间戳适合展示或传输场景:
toString():本地时区完整字符串(可读但不标准)toUTCString():UTC 时间字符串(如 "Sat, 15 Jun 2025 06:30:00 GMT")toISOString():ISO 8601 格式字符串(如 "2025-06-15T06:30:00.000Z"),带 Z 表示 UTC,最推荐用于 API 交互toLocaleDateString() / toLocaleTimeString():按本地语言/地区习惯格式化,可传选项控制(如 { year: 'numeric', month: '2-digit' })toJSON():等价于 toISOString(),常用于 JSON 序列化基本上就这些。Date 对象本身不复杂,但时区、月份索引、字符串解析兼容性等细节容易踩坑。日常建议优先用 toISOString() 传时间,用 new Date(timestamp) 或 new Date('YYYY-MM-DD') 创建,避免模糊字符串解析。