Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Extend Date prototype with a interface Typescript

I want to add a getWeekNumber function to the Date prototype in javascript / typescript. I want to do it with an interface becease otherwise I get a error that he does not know the method getWeekNumber().

First I tried with a standart Date interface like this:

interface Date {
    getWeekNumber(): number;
}

This had the resolve that all the methods of the Date are not call able anymore.

I want to know of there is a way to extend the Date with an interface.

like image 518
Martijn Bakker Avatar asked Feb 07 '23 08:02

Martijn Bakker


1 Answers

You can do it this way:

in DateExt.ts:

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

Date.prototype.getWeekNumber = function() 
{
    return 123;//your calculations goes here
};

in your app.ts:

import './DateExt';

let a = new Date();
console.log(a.getWeekNumber());
like image 91
Amid Avatar answered Feb 09 '23 23:02

Amid