跳至主要内容

jsonencode 函数

jsonencode 使用 JSON 语法将给定值编码为字符串。

JSON 编码在 RFC 7159 中定义。

此函数将 OpenTofu 语言值 映射到 JSON 值,方式如下:

OpenTofu 类型JSON 类型
字符串字符串
数字数字
布尔值布尔值
列表(...)数组
集合(...)数组
元组(...)数组
映射(...)对象
对象(...)对象
空值null

由于 JSON 格式无法完全表示所有 OpenTofu 语言类型,因此将 jsonencode 的结果传递给 jsondecode 不会产生相同的值,但自动类型转换规则意味着在实践中这很少成为问题。

编码字符串时,此函数使用 Unicode 转义序列转义某些字符:将 <>&U+2028U+2029 分别替换为 \u003c\u003e\u0026\u2028\u2029

jsonencode 命令输出输入的最小化表示形式。

示例

代码块
> jsonencode({"hello"="world"})
{"hello":"world"}
  • jsondecode 执行相反的操作,即解码 JSON 字符串以获取其表示的值。