扩展Typescript数字类型

时间:2017-02-17 17:23:03

标签: javascript typescript

我想在number类型中添加一些功能。所以我尝试了这段代码:

interface Number
{
    IsInRange(min: number, max: number):boolean;
}

Number.prototype.IsInRange = function(min: number, max: number): boolean
{
    if ((this >= min) && (this <= max)) return true;

    return false;
}

我把它放在extensions.ts的{​​{1}}文件中(这是正确的地方吗?)

问题是我的代码无法编译。我得到了:

  

属性'IsInRange'在'number'类型上不存在。

但编辑(Visual Studio Code)并没有抱怨。

我做错了什么?我认为打字稿src/app/commonnumber界面不同。

2 个答案:

答案 0 :(得分:0)

在你的效用函数中只有这样的东西:

export function isInRange(n: number, min: number, max: number): boolean {
  return n >= min && n <= max
}

然后像

一样使用它
const inRange = isInRange(4, 2, 10); // instead of 4.isInRange(2, 10)

答案 1 :(得分:0)

数字界面应该在.ts文件的开头