跳到主要内容
Varlig 指南
Varlig 首页

时刻与时长

本页介绍两件相关的事:像 9:30am 这样的时刻,以及像 2h 15m 这样的时间长度。记录工时、推算行程何时结束、累计会议时长、按小时计费或比较比赛分段成绩时,都可以参考本页。

时刻回答“那时是几点?”,时长回答“要多久?”。两个时刻相减得到时长,时刻加上时长得到新的时刻。日历日期请参阅日期与日历;不同地点之间的时间换算请参阅时区

书写时刻

时刻可以带 ampm,也可以用 24 小时制、写作 noon(中午)和 midnight(午夜),或者照着口语来写。不区分大小写,空格可有可无。

calc
9:30am 结果为 9:30 AM
7.30pm 结果为 7:30 PM
9 am 结果为 9:00 AM
21:30 结果为 9:30 PM
noon 结果为 12:00 PM
midnight 结果为 12:00 AM
half past 7pm 结果为 7:30 PM
quarter to 5 结果为 4:45 AM
  • 带 am 或 pm 时,点号和冒号效果相同。 7.30pm7:30pm 都是晚上七点半,所以你可以像发消息那样输入时间。分钟要写成两位数。
  • 不带 am 或 pm 的时刻按 24 小时制读取。 3:30half past 3 都是凌晨 3:30。下午请写 3:30pm15:30half past 3pm,并且要用冒号,因为单独的 19.30 是一个数字。
  • 三段式写法表示时长。 1:30:15 是 1 小时 30 分 15 秒,而不是一天中的某个时刻。
  • 带单位的写法表示时长。 9h 是九个小时,而不是九点钟。

在时刻上加减时间

在时刻上加上或减去一段时长,即可算出某件事何时开始或结束。

calc
10:30am + 45 minutes 结果为 11:15 AM
9am + 8.5 hours 结果为 5:30 PM
6:15am + 7h 50m 结果为 2:05 PM
12:45pm - 35 minutes 结果为 12:10 PM
midnight + 90 minutes 结果为 1:30 AM
11pm + 2 hours 结果为 Tomorrow at 1:00 AM
1am - 2 hours 结果为 Yesterday at 11:00 PM

如果结果跨过了午夜,会显示 Tomorrow at(明天)或 Yesterday at(昨天),让你一眼看出日期已经变了。

两个时刻之间的时间

在两个时刻之间写 to,即可得到从第一个时刻到第二个时刻的时间。计算班次、睡眠和行程时,请使用这种写法。

calc
9am to 5pm 结果为 8 hours
8:45am to 5:15pm 结果为 8 hours 30 min
9:30 to noon 结果为 2 hours 30 min
10pm to 6:30am 结果为 8 hours 30 min
9am to 5pm in minutes 结果为 480 min

你也可以用一个时刻减去另一个时刻:

calc
17:00 - 9:00 结果为 8 hours
6:30am - 10pm 结果为 15 hours 30 min

涉及午夜时,两种写法的结果不同。to 总是向后计算,所以 10pm to 6:30am 是跨夜的 8 小时 30 分钟。减法给出的是同一天内两个时刻之间的间隔,与书写顺序无关,所以 6:30am - 10pm 是 15 小时 30 分钟。凡是跨过午夜的情况,请使用 to

带时刻的日期

at 连接日期和时刻,或者直接把时刻写在日期后面。这样再加上若干小时,就能正确地跨天计算。

calc
June 14 2025 at 9am 结果为 June 14, 2025 at 9:00 AM
June 14 2025 9:30 结果为 June 14, 2025 at 9:30 AM
June 14 2025 at 11pm + 2 hours 结果为 June 15, 2025 at 1:00 AM
June 14 2025 at 9am UTC in Berlin 结果为 June 14, 2025 at 11:00 AM

当前时间

now 是你 Mac 上的当前时间。只要编辑器处于可见状态,用到它的结果就会持续更新。下面的结果仅作示意。

calc结果取决于今天的日期或实时数据
now + 1 hour 结果为 4:47 PM
now to 5pm 结果为 1 hour 12 min 51 s
now to midnight 结果为 8 hours 12 min 51 s
hours until midnight 结果为 8.2141666667 hours
hours since 9am 结果为 6.7858333333 hours
now + 1 day 结果为 Tomorrow at 3:47 PM
Monday at 10:30 结果为 Monday 10:30 AM
(11pm + 2 hours) + 1 month 结果为 October 17, 2026 at 1:00 AM

hours untilhours since 计算到某个时刻或从某个时刻起经过的小时数。不带日期的时刻,在 until 后面指下一个这样的时刻,在 since 后面指最近过去的那个,所以 hours until midnight 是距今晚午夜的倒计时,hours since 9am 是从今天上午 9 点算起。换成 minutes 可以计算得更精细,写成 now to midnight 则以小时和分钟显示。按天和周计算,请参阅倒计时

11pm + 2 hours 这样滚入另一天的时刻会变成完整的日期,因此你可以继续在上面加上月份等日历单位。

书写时长

时长写成数字加单位。把几个部分依次写在一起即可组合,中间有没有空格都行。

calc
2 hours 30 minutes 结果为 2 hours 30 min
2h 30m 结果为 2 hours 30 min
3 hrs 20 mins 结果为 3 hours 20 min
1h30m15s 结果为 1 hour 30 min 15 s
2.5 h 结果为 2.5 hours
1 week 2 days 结果为 1 week 2 days
1:30:15 结果为 01:30:15
单位 可以写作
ssecsecssecondseconds
分钟 minminsminuteminutes,以及组合时长(如 2h 30m)中的 m
小时 hhrhrshourhours
daydays
wkwksweekweeks
双周 fortnightfortnights
momosmonthmonths
yryrsyearyears
更长 decadedecadescenturycenturiesmillenniummillennia

双周、十年和世纪的用法与其他时间长度相同;把它们加到日期上时,会按完整的日历周期移动日期:

calc
1 fortnight in days 结果为 14 days
3 decades in years 结果为 30 years
June 14 2025 + 1 fortnight 结果为 June 28, 2025

有几个缩写的含义可能和你预想的不一样:

  • 单独的 m 表示米。 5 m 是长度。分钟请写 5 min;只有跟在小时后面时 m 才表示分钟,如 2h 30m
  • d 不是单位。 请写 3 days,而不是 3d

你也可以按平常说话的方式书写时长。不满一小时的部分会以分钟显示,整数加几分之几的时长则以小时和分钟显示:

calc
half an hour + 20 min 结果为 50 min
quarter of an hour 结果为 15 min
three quarters of an hour 结果为 45 min
an hour and a half 结果为 1 hour 30 min
a day and a half 结果为 1 day 12 hours
twenty minutes + half an hour 结果为 50 min

累加与换算时长

时长可以像其他数字一样加、减、乘、除。

calc
1h 45m + 2h 30m 结果为 4 hours 15 min
45 min + 1 hour 20 min + 35 min 结果为 2 hours 40 min
2 hours 15 min * 3 结果为 6 hours 45 min
90 min / 4 结果为 22 min 30 s
37.5 hours / 5 结果为 7 hours 30 min

由时长算出的结果如果不是整数个小时、分钟或天,会拆分成几部分显示,就像你口头说的那样。你输入的带小数的时长则保持原样,需要小数时,随时可以用 in hours

calc
40 hours - 37.5 hours 结果为 2 hours 30 min
1.5 hours * 3 结果为 4 hours 30 min
2.5 hours 结果为 2.5 hours
40 hours - 37.5 hours in hours 结果为 2.5 hours

由几部分组成的负数结果会加上括号,让负号明确作用于整个结果:

calc
30 min - 2 hours 结果为 -(1 hour 30 min)
10 days - 3 weeks 结果为 -(1 week 4 days)

两个单位不同的时长相乘,意思和你口头说的一样:5 days × 8 h 就是五天、每天八小时。无论书写顺序如何,较长的单位用来计算有几个周期,较短的单位得以保留,因此累计工作时长非常方便:

calc
每天工时 = 8 h
每周天数 = 5 days
每周工时 = 每周天数 × 每天工时 结果为 40 hours
每月工时 = 每周工时 × 4 结果为 160 hours
8 h × 5 days 结果为 40 hours
5 days × (8 h/day) 结果为 40 hours
8 hours a day × 5 days 结果为 40 hours

8 h/day8 hours a day 这样的比率也是同样的道理,加不加括号都可以。

加上 in 和单位即可换算。只写一个单位得到小数;写两个单位(如 hours and minutes)则会拆分结果。

calc
525 min in hours 结果为 8.75 hours
525 min in hours and minutes 结果为 8 hours 45 min
7.8 hours in hours and minutes 结果为 7 hours 48 min
89.9 min in hours and minutes 结果为 1 hour 30 min
2 days 3 hours in hours 结果为 51 hours
100 hours in days and hours 结果为 4 days 4 hours
18 months in years and months 结果为 1 year 6 months
200 s in minutes and seconds 结果为 3 min 20 s

用两个单位表示的答案会舍入到最接近的整数个较小单位,所以 89.9 min 显示为 1 小时 30 分钟,而不会丢掉不足一分钟的部分。要像工时表那样用小数表示小时,请写 in hours。没有单独的 as decimal hours 写法。

每周合计保持以小时显示

小时和分钟相加的结果始终以小时显示,无论总数多大,所以一周的班次读起来就像工时表一样。只有当求和中包含一天或更长的时长,或者用 in days 换算时,才会出现天数:

calc
7 hours 30 min * 5 结果为 37 hours 30 min
7 hours 30 min * 5 in hours 结果为 37.5 hours
7h 30m * 4 + 1 day 结果为 2 days 6 hours

月和年是平均值

单独使用时,一个月和一年都是平均长度,所以换算成天数会得到小数。

calc
1 month in days 结果为 30.436875 days
1 year in days 结果为 365.2425 days
1 week in hours 结果为 168 hours

要在日期上加上一个真正的日历月,请直接加在日期上:January 31 2025 + 1 month 是 2 月 28 日。请参阅日期与日历

时长与小时费率

时长乘以小时费率就得到价格。时间怎么记录的就怎么写:小数、2h 15m 这样的小时加分钟,或者写成 9am to 5:30pm 的班次。用 at 来写也很自然。

calc
2.5 hours * $60/hour 结果为 $150.00
3 hours at £45/hour 结果为 £135.00
2h 15m * £40/hour 结果为 £90.00
班次 = 9am to 5:30pm
班次 * £18/hour 结果为 £153.00
£20/hour * 5 days * 8 h 结果为 £800.00
2 hours 30 min per day * 5 days 结果为 12 hours 30 min

在较长的一行中,天和小时仍会配对为工作日,所以 £20/hour * 5 days * 8 h 就是每小时 £20、共 40 小时。由几部分组成的时长也可以放在 per/ 前面,所以像 2 hours 30 min per day 这样的每日习惯,可以累计出一周的总时长。

一个时长除以另一个时长,可以看出它能容纳多少份;按步长舍入,则能把工时表中的一条记录变成可计费的刻钟数:

calc
3 hours 45 min / 15 min 结果为 15
1 hour 52 min rounded up to nearest 15 min 结果为 2 hours

更多舍入时长的方法,请参阅舍入

时间跨度、分段计时与时分秒

秒数可以显示为易读的时间跨度,也可以显示为秒表式的分段计时。

calc
5000 seconds as timespan 结果为 1 hour 23 min 20 s
100000 seconds as timespan 结果为 1 day 3 hours 46 min 40 s
3725 seconds as laptime 结果为 01:02:05
83.45 seconds as laptime 结果为 00:01:23.45
2.75 hours as HMS 结果为 2h 45m 0s

分段计时会保留秒的小数部分,适合跑步、骑行和游泳的分段成绩:

calc
0:04:12.50 + 0:04:08.20 结果为 00:08:20.7
4 min 5 s * 10 as laptime 结果为 00:40:50
1:23:45.67 结果为 01:23:45.67

带秒的小数部分的分段计时必须写全三段:请写 0:01:23.45,因为 1:23.45 会被读作时刻凌晨 1:23。

以时分秒表示角度

HMS 也能换算角度,每小时对应 15°,天文学家就是这样书写赤经的。as DMS(或 to DMS)以度、分、秒显示角度,常用于地图坐标。你可以直接输入度、分、秒,使用 ′ ″' " 均可。

calc
187.5 degrees as HMS 结果为 12h 30m 0s
51.5074 degrees as DMS 结果为 51° 30′ 26.64″
51° 30 27 结果为 51.5075°
51° 30' 27" 结果为 51.5075°

综合运用

下面是一位自由职业者一个短周的工时表,最后算出发票总额。

calc
周一 = 9:15am to 5:45pm
周二 = 8:30am to 4:15pm
周三 = 10am to 6:30pm
休息 = 3 * 45 min
工时 = 周一 + 周二 + 周三 - 休息 结果为 22 hours 30 min
工时 in hours 结果为 22.5 hours
费率 = CNY 200/hour
发票金额 = 工时 * 费率 结果为 4,500.00 CNY
预算 = 30 hours
预算 - 工时 结果为 7 hours 30 min

每天都是用 to 写成的一个班次,休息时间从总数中扣除。发票金额是工作小时数乘以费率,最后一行显示约定的 30 小时还剩多少。