22-08-7 22:01 发布于 新加坡 来自 新版微博 weibo.com
今天 reivew 翻译的时候看到把 type predicate 翻译成 ”类型谓词“,感觉不知所云。predicate 本身多义,作为语法术语确实是指谓词,但在逻辑学中可指 "something which is affirmed or denied concerning an argument of a proposition",也即 ”断言“。

type predicate 在 TS 中的实际作用是作为函数的返回类型,判定一个参数是否为指定类型:

function isFish(pet: Fish | Bird): pet is Fish

这里的 "pet is Fish" 即是一个 type predicate,即判断 pet 是否是 Fish 类型。

一开始觉得很适合翻译为 “类型断言”,然而在 TS 中也存在 type assertion 的概念,且已被广泛翻译为 “类型断言” 了,因此为作区别,选择译为 “类型判定”。
欢迎新用户
o p

正在加载,请稍候...