前端(JavaScript)函数_时间类

文档概述

轻语言网站开发中的时间日期操作函数、用于处理时间和日期数据,包含创建时间对象、获取年月日时分秒星期、格式化日期时间、计算时间差、时间戳转换、日期比较等功能,常用于时间显示、日期计算、时间格式化等场景。

  • 时间获取取年/取月/取日/取时/取分/取秒/取星期 可分别获取时间各部分,参数为空取当前时间
  • 格式化输出取现行日期/取现行时间/时间对象到文本 将时间对象转为字符串,可指定分隔符
  • 时间创建创建时间对象(字符串) / 创建指定时间对象(各分量) 两种创建方式
  • 时间计算取时间差 返回两时间对象的毫秒差;文本到时间戳 将时间字符串转为时间戳

💡 时间戳与时间差取时间差(A, B) 返回 A-B 的毫秒数(1秒=1000毫秒)。计算两时间相差天数:取时间差(A, B) / 1000 / 60 / 60 / 24取星期 返回 0-6,0 表示星期日。

函数:创建时间对象(时间字符串)

创建Date对象,参数为空则返回当前时间。时间字符串格式如 '2026/07/20 10:00:00'。

' 获取当前时间
变量 当前时间 = 创建时间对象()
调试输出(当前时间)

' 解析指定时间字符串
变量 指定时间 = 创建时间对象("2026/08/10 14:30:00")
调试输出(指定时间)

函数:取年(时间对象)

获取时间对象的年份,参数为空则取当前年。

变量 年 = 取年()
调试输出(年)  ' 如:2026

' 判断闰年
变量 当前年 = 取年()
如果(取余数(当前年, 4) == 0 且 取余数(当前年, 100) != 0)
	调试输出(当前年 + " 是闰年")
否则 如果(取余数(当前年, 400) == 0)
	调试输出(当前年 + " 是闰年")
否则
	调试输出(当前年 + " 是平年")
结束 如果

函数:取月(时间对象)

获取时间对象的月份(1-12),参数为空则取当前月。

变量 月 = 取月()
调试输出(月)  ' 1-12

' 根据月份显示季节
变量 当前月 = 取月()
如果(当前月 == 10 或 当前月 == 11 或 当前月 == 12)
	调试输出("冬季")
否则 如果(当前月 == 1 或 当前月 == 2 或 当前月 == 3)
	调试输出("春季")
否则 如果(当前月 == 4 或 当前月 == 5 或 当前月 == 6)
	调试输出("夏季")
否则 如果(当前月 == 7 或 当前月 == 8 或 当前月 == 9)
	调试输出("秋季")
否则
	调试输出("未知月份")
结束 如果

函数:取日(时间对象)

获取时间对象的日(1-31),参数为空则取当前日。

变量 日 = 取日()
调试输出(日)  ' 1-31

' 显示当前日期
变量 当前日期 = 取年() + "年" + 取月() + "月" + 取日() + "日"
调试输出(当前日期)

函数:取时(时间对象)

获取时间对象的小时(0-23),参数为空则取当前时。

变量 时 = 取时()
调试输出(时)  ' 0-23

' 根据时间显示问候语
变量 当前时 = 取时()
如果(当前时 < 6)
	调试输出("凌晨好")
否则 如果(当前时 < 12)
	调试输出("上午好")
否则 如果(当前时 < 18)
	调试输出("下午好")
否则
	调试输出("晚上好")
结束 如果

函数:取分(时间对象)

获取时间对象的分钟(0-59),参数为空则取当前分。

变量 分 = 取分()
调试输出(分)  ' 0-59

函数:取秒(时间对象)

获取时间对象的秒数(0-59),参数为空则取当前秒。

变量 秒 = 取秒()
调试输出(秒)  ' 0-59

函数:取星期(时间对象)

获取时间对象的星期几(0-6,0表示星期日),参数为空则取当前星期。

变量 星期 = 取星期()
调试输出(星期)  ' 0-6

' 显示中文星期
变量 星期名 = ["日", "一", "二", "三", "四", "五", "六"]
变量 星期几 = 取数组成员(星期名, 取星期())
调试输出("星期" + 星期几)  ' 如:星期一

函数:取现行日期(分隔符)

获取当前日期字符串,分隔符可选,默认 '/',例如 '2026/08/10'。

变量 日期 = 取现行日期("-")
调试输出(日期)  ' 2026-08-10

' 默认分隔符
变量 日期2 = 取现行日期()
调试输出(日期2)  ' 2026/08/10

函数:取现行时间(分隔符)

获取当前时间字符串,分隔符可选,默认 ':',例如 '14:30:25'。

变量 时间 = 取现行时间(":")
调试输出(时间)  ' 14:30:25

' 完整日期时间
变量 当前 = 取现行日期("-") + " " + 取现行时间(":")
调试输出(当前)  ' 2026-08-10 14:30:25

函数:创建指定时间对象(年, 月, 日, 时, 分, 秒)

根据指定年月日时分秒创建Date对象(月为1-12,时、分、秒可选)。

变量 时间 = 创建指定时间对象(2026, 8, 10, 10, 0, 0)
调试输出(时间)

' 仅指定年月日
变量 生日 = 创建指定时间对象(1990, 5, 15)
调试输出(生日)

函数:时间对象到文本(时间对象, 日期分隔符)

将Date对象格式化为 'YYYY/MM/DD HH:MM:SS' 字符串,分隔符可选,默认 '/'。

变量 文本 = 时间对象到文本(创建时间对象(), "-")
调试输出(文本)  ' 2026-08-10 14:30:25

' 格式化指定时间
变量 指定时间 = 创建指定时间对象(2026, 1, 1)
变量 格式文本 = 时间对象到文本(指定时间, "/")
调试输出(格式文本)  ' 2026/01/01 00:00:00

函数:取时间差(时间对象A, 时间对象B)

返回两个时间对象的毫秒差值(A - B)。

变量 差 = 取时间差(创建时间对象("2026-08-10 12:00:00"), 创建时间对象("2026-08-10 10:00:00"))
调试输出(差)  ' 7200000 (2小时的毫秒数)

' 计算两时间相差天数
变量 开始 = 创建时间对象("2026-08-01")
变量 结束 = 创建时间对象("2026-08-10")
变量 毫秒差 = 取时间差(结束, 开始)
变量 天数 = 向下取整(毫秒差 / 1000 / 60 / 60 / 24)
调试输出("相差 " + 天数 + " 天")  ' 9

函数:文本到时间戳(时间字符串)

将时间字符串转换为毫秒时间戳,若解析失败返回-1。

变量 时间戳 = 文本到时间戳("2026-08-10 14:30:00")
调试输出(时间戳)  ' 毫秒数

' 判断解析是否成功
变量 戳 = 文本到时间戳("无效时间")
如果(戳 == -1)
	调试输出("时间格式无效")
否则
	调试输出("时间戳: " + 戳)
结束 如果

学习要点

知识点代码示例说明
当前时间取年() / 取月() / 取日()参数为空时取当前时间分量,取星期 返回 0-6(0=周日)
日期格式化取现行日期("-") / 取现行时间(":")可指定分隔符;组合使用得到完整日期时间字符串
时间对象创建创建时间对象("2026/08/10")字符串创建;创建指定时间对象(年, 月, 日, 时, 分, 秒) 分量创建
时间差计算取时间差(A, B)返回 A-B 的毫秒数;天数 = 毫秒/1000/60/60/24
时间戳转换文本到时间戳("2026-08-10 14:30:00")字符串转毫秒时间戳;失败返回 -1,需判空
闰年判断取余数(年, 4) == 0能被4整除且不被100整除,或被400整除为闰年
中文星期取数组成员(["日","一",...], 取星期())星期数组映射中文名称,0=周日
时间字符串格式"2026/08/20 10:00:00"推荐使用 /- 分隔,避免使用 . 导致解析问题

相关文档

  • 文档前端(JavaScript)函数_时钟类 —— 创建时钟延时执行 定时器函数
  • 文档前端(JavaScript)函数_数据转换类 —— 到文本到数值 等类型转换函数
  • 文档前端(JavaScript)函数_数学运算 —— 取余数向下取整 等数学函数
  • 文档前端(JavaScript)函数_数组操作 —— 取数组成员 用于星期名映射
  • 文档前端(JavaScript)函数_储存类 —— 保存配置 存储时间相关用户偏好