跳到主要内容

Postman Flows 数据类型

Postman Flows 是一种数据流语言,这意味着它理解所有类型的值并将类型与数据相关联。Flows 是一种混合类型语言,因此它执行静态类型检查以提供自动完成和预警等功能。流程还在执行期间执行一些动态类型检查。

由于大多数流程序员都有 JavaScript 或 TypeScript 背景,或者是第一次使用 API 优先语言进行编程,因此类型的词汇类似于 JavaScript 和 TypeScript。

原始值

类型它接受什么例子
布尔值true或者falsetrue
stringutf-8 编码的字符hello world 😎
number双精度 64 位值或 64 位无符号整数3.14
4294967295
时间戳包含 RFC3339 时间戳的字符串1985-04-12T23:20:50.52Z
正则表达式正则表达式/ab+c/
象征各种类型的符号now
null

布尔值

布尔值可以包含两个符号trueor false。布尔类型用符号 表示bool

如果需要,布尔值会自动转换为number字符串

价值numberstring
true1"true"
false0"false"

string

字符串类型用于表示文本数据。它是一个 UTF-8 编码的字符列表。与 JavaScript 一样,流中的字符串也是不可变的。例如,字符串一旦创建,就无法修改。但是你可以使用 concatsubstring等运算符从现有字符串中创建新字符串。

字符串值不能自动转换为任何其他类型

JSON 值是字符串类型。如果 header 指示 JSON 正文,则发送请求块会自动解析数据。content-type在没有自动解析的情况下,你需要使用JSON Parse块来解析字符串。

number

number 类型可以表示各种数值,例如整数和小数。number 在内部存储为 JavaScript number,但将来会发生变化,以考虑 64 位整数并提供统一的 number 类型。

如果需要,number值会自动转换为字符串布尔值

价值布尔值string
0错误的"0"
3.14真的"3.14"

时间戳

与 JavaScript 不同,Postman Flows 将日期视为一等类型,并提供了一种用于存储日期的数据类型。日期按照 RFC 3339 存储。

如果需要,时间戳值会自动转换为字符串number

价值stringnumber
1985-04-12T23:20:50.52Z"1985-04-12T23:20:50.52Z"482196050520

正则表达式

正则表达式是可用于匹配字符串中的字符组合的模式。Flows 借用了 JavaScript 正则表达式实现。 在 MDN 上阅读更多内容

如果需要,正则表达式值会自动转换为字符串。

价值string
/$^/"/$^/"

抽象类型

流中所有复杂和抽象的数据类型在内部都建立在流的概念之上。

列表

列表数据类型表示有序值流,其中相同类型的值可能出现不止一次。列表类似于 JavaScript 中的数组,但列表中存在的所有元素必须属于同一类型。

这是一个等价于列表的 TypeScript:

const list: number[] = [1, 2, 3, 4, 5]

元组

元组数据类型表示有限元素的有序序列。元组的每个元素的值可以是不同的类型。与列表不同,元组不能是无限流。元组有固定的大小,必须事先知道它们的大小。

这是元组的 TypeScript 等价物。

const list: [string, number, boolean] = ["flows", 20, true]

记录

记录是字段(键值对)的集合,其中键是字符串类型,值可以是不同类型。这些字段的数量是固定的,并遵循特定的顺序。如果你对 C 有一定的了解,记录就像struct.

这是一个相当于记录的 TypeScript:

interface Box {
name: string
length: number
width: number
height: number
empty: boolean
}

Map

映射是字段的集合,其中键可以是原始类型的值,对应的值可以是任何数据类型。所有映射字段必须具有相同类型的键和值。

这是 Map 的 TypeScript 等效项:

type map: {[key: string]: number} = {"a": 1, "b": 2, "c": 3};