注意:该页面为保留旧有翻译而留下的,新文档并没有该页面,请注意甄别。新的文档可以在 “基础” 部分找到,不过暂未未完全翻译完毕。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 中文文档

dictionary

这是一个从字符串键到值的映射。

您可以在括号中使用逗号分隔的键值对构建字典。值的类型不必相同。 由于空括号已经产生了一个空数组,所以您必须使用特殊的 (:) 语法创建一个空字典。

字典在概念上类似于数组,但其索引是字符串而不是整数。 您可以使用 .at() 方法访问和创建字典条目。如果你知道键,则可以使用字段访问符号(.key)访问值。 可以使用 + 运算符将字典相加并合并在一起。要检查字典中是否存在某个键,请使用 in 关键字。

您可以使用 for 循环迭代字典中的键值对。这将按照插入 / 声明的顺序进行迭代。

Example

#let dict = (
  name: "Typst",
  born: 2019,
)

#dict.name \
#(dict.launch = 20)
#dict.len() \
#dict.keys() \
#dict.values() \
#dict.at("born") \
#dict.insert("city", "Berlin ")
#("name" in dict)
Preview

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

len method

字典中键值对的数量。

value.len(
) -> integer

at method

返回字典中与指定键关联的值。如果字典中已存在该键,可以在赋值语句的左侧使用它。 如果键不是字典的一部分,则返回默认值,如果没有指定默认值,则返回错误。

value.at() -> any

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

要检索项目的键。

default
any

如果键不是字典的一部分,则返回的默认值。

insert method

将一个新的键值对插入字典,并返回该值。如果字典已经包含了这个键,则更新该值。

value.insert() ->

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

要插入的键值对的键。

value
any
必需参数位置参数
位置参数按顺序传入,不带名称。

要插入的键值对的值。

keys method

以插入顺序将字典的键作为数组返回。

value.keys(
) -> array

values method

以插入顺序将字典的值作为数组返回。

value.values(
) -> array

pairs method

将字典的键和值作为键值对的数组返回。每个键值对都表示为长度为 2 的数组。

value.pairs(
) -> array

remove method

通过键从字典中删除一个键值对,并返回该值。

value.remove() -> any

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

要从字典中删除的键值对的键。