【发布时间】:2012-10-15 14:25:58
【问题描述】:
我正在尝试使用TypeScript,在创建一个包含ID 字段的类的过程中,应该是integer,我有点困惑。
首先,在带有 TypeScript 插件的 Visual Studio 2012 中,我在智能感知类型列表中看到了 int。但是我得到一个编译错误,上面写着:
当前作用域中不存在名称“int”。
我查看了语言规范,只看到以下原始类型:number、string、boolean、null 和 undefined。没有integer 类型。
所以,我有两个问题:
-
我应该如何向我班级的用户表明特定字段不仅仅是
number,而是integer(绝不是floating点或decimal数字)? -
如果
int不是有效类型,为什么我会在智能感知列表中看到它?
更新:到目前为止,我得到的所有答案都是关于 JavaScript 没有 int 类型,在运行时很难强制执行 int 类型......我知道这一切。我在问是否有TypeScript 方法向我的班级用户提供注释,该字段应该是integer。也许是某种特定格式的评论?
【问题讨论】:
-
不,它也不是我的应用程序中的有效 ID。 10 将是一个有效的 ID。
-
验证字段并确保只接受整数值的一种方法是创建一个验证方法,该方法首先将任何可能的输入值转换为字符串,使用 RegEx 来检查该值.) 没有小数点,或 b.) 如果存在小数点,则所有后续字符都为零。之后,该方法转换回数字类型并将结果传递给需要约束的字段。
标签: typescript