注意:该页面为保留旧有翻译而留下的,新文档并没有该页面,请注意甄别。新的文档可以在 “基础” 部分找到,不过暂未未完全翻译完毕。Typst 非官方中文交流 QQ 群:793548390
Warning: the Chinese document is a community-driven non-official document, there may be mistranslation, omission or outdated problems, please refer to the official website documentation.
Typst 中文文档

datetime

日期、时间或两者的组合的表示。可以通过使用 datetime 函数来指定自定义日期时间, 或使用 datetime.today 获取当前日期。

Example

#let date = datetime(
  year: 2020,
  month: 10,
  day: 4,
)

#date.display() \
#date.display(
  "y:[year repr:last_two]"
)

#let time = datetime(
  hour: 18,
  minute: 2,
  second: 23,
)

#time.display() \
#time.display(
  "h:[hour repr:12][period]"
)
Preview

Format

你可以使用 display 方法来指定自定义的日期时间格式化方式。 日期时间的格式化由提供具有指定数量 修饰符组件 来指定。 组件代表你想要显示的日期时间的特定部分,而借助修饰符,你可以定义如何显示该组件。 为了显示一个组件,你需要将组件名称用方括号括起来(例如,[year] 会显示年份)。 要添加修饰符,需要在组件名称之后加上一个空格,然后是修饰符的名称、冒号和修饰符的值(例如,[month repr:short] 会显示月份的短表示)。

以下是组件及其对应修饰符的可能组合方式:

请注意,并非始终可以使用所有组件。 例如,如果你创建一个新的日期时间,如 datetime(year: 2023, month: 10, day: 13), 它将被内部存储为纯日期,这意味着你不能使用诸如 hourminute 等仅适用于特定时间的日期时间的组件。

方法
方法是可用于该类型的一系列函数,可以使用 "." 操作符调用它们。

display method

以特定方式显示日期时间。 根据你是否仅定义了日期、时间或两者,日期时间的默认格式将会有所不同。 如果你只指定了日期,格式为 [year]-[month]-[day]。 如果你只指定了时间,格式为 [hour]:[minute]:[second]。 如果你同时指定了日期和时间,格式为 [year]-[month]-[day] [hour]:[minute]:[second]

value.display() -> string

pattern
string
位置参数
位置参数按顺序传入,不带名称。

用于显示日期时间的格式。

year method

如果日期时间中的 year 存在,返回它。否则,返回 none

value.year(
) -> integernone

month method

如果日期时间中的 month 存在,返回它。否则,返回 none

value.month(
) -> integernone

weekday method

如果日期时间的 weekday 存在,返回它按照从星期一开始并用数字表示。否则,返回 none

value.weekday(
) -> integernone

day method

如果日期时间中的 day 存在,返回它。否则,返回 none

value.day(
) -> integernone

hour method

如果日期时间中的 hour 存在,返回它。否则,返回 none

value.hour(
) -> integernone

minute method

如果日期时间中的 minute 存在,返回它,否则,返回 none

value.minute(
) -> integernone

second method

如果日期时间中的 second 存在,返回它,否则,返回 none

value.second(
) -> integernone