使用接口Typescript扩展Date原型

mba*_*996 4 javascript date interface typescript

我想在javascript/typescript中为Date原型添加一个getWeekNumber函数.我想用接口becease来做,否则我得到一个错误,他不知道方法getWeekNumber().

首先,我尝试使用标准的Date界面,如下所示:

interface Date {
    getWeekNumber(): number;
}
Run Code Online (Sandbox Code Playgroud)

这决定了Date的所有方法都不再可调用了.

我想知道有一种方法可以使用接口扩展Date.

Ami*_*mid 6

你可以这样做:

在DateExt.ts中:

interface Date 
{
    getWeekNumber: () => number;
}

Date.prototype.getWeekNumber = function() 
{
    return 123;//your calculations goes here
};
Run Code Online (Sandbox Code Playgroud)

在你的app.ts:

import './DateExt';

let a = new Date();
console.log(a.getWeekNumber());
Run Code Online (Sandbox Code Playgroud)