目标是创建一个新的关键字'int',它与命名类型'number'具有相同的语义。 我知道我可以通过使用类型'number'来实现相同的行为,但我特别要求在typescript中实现一个新的关键字。我正在采访我校的一个研究项目。
示例用例如下:
function add(x:int, y:int) {
return x + y;
}
我一直在努力实现这个确切的用例。我花了几个小时浏览documentation。
我已经阅读了类型,类和接口部分,试图找出如何做到这一点;到目前为止没有运气。
我知道我可以通过这样的界面实现类似的东西:
interface int {
n: number;
}
但是我必须实现这样的功能:
function add(x:int, y:int) {
return x.n + y.n;
}
我对打字稿是全新的,所以任何方向都非常感谢 - 谢谢。
上的一些基本示例答案 0 :(得分:0)
根据http://typescript.codeplex.com/workitem/119,您可以使用
interface int extends number {}
你也可能对feature: int and float types感兴趣。
答案 1 :(得分:0)
根据这个问题,你的教授已经意识到了TypeScript的局限性。
他特意要求你制作一个添加功能。这很重要,因为TypeScript不支持重载运算符(例如+
)。
但是,您可以编写一个接受两个int的函数,并使用一元add运算符返回一个int,如下所示。只有函数内部的代码需要理解有奇怪的东西在继续。功能之外的一切都认为存在。
这不会阻止你使用int类型传递浮点数。
interface int extends Number {
}
function add(x: int, y: int) : int {
return +x + +y;
}
var a: int = 1;
var b: int = 2;
var c = add(a, b);