打字稿 - 条件参数

时间:2017-08-15 21:16:00

标签: typescript numbers range

我想限制数字类型的构造函数参数之一,只分配某个范围的值。我知道如何用setter和条件语句来达到类似的效果。我想知道是否有办法创建自定义类型,这是一个数字范围,但现在没有。所以,建议我,通过简单的操作来实现它是不可能的?

先谢谢你的回复! crova

1 个答案:

答案 0 :(得分:2)

如果该数字范围相对较低,请将其列出:

type Range1 = 1|2|3|4|5;
var r1: Range1 = 4;

如果它意味着什么,你可以使用枚举:

const enum Range2 { FirstKind1 = 1, SecondKind2 = 2, ThirdKind = 3 }
var r2a: Range2 = Range2.ThirdKind;
var r2b: Range2 = 3;

否则你今天运气不好。

我个人希望能够声明一个int类型,但即使它还没有支持,我仍然会用别名孜孜不倦地注释我的类型,即使它不能给我任何静态检查今天,但在代码中使意图更具可读性:

type int = number; 

let transactionNo: int;