Typescript - static
ES6 includes static members and so does TypeScript
The static members of a class are accessed using the class name and dot notation, without creating an object e.g. <ClassName>.<StaticMember>. You can not access it using instance of that class
class Circle {
static pi: number = 3.14;
static calculateArea(radius:number) {
return this.pi * radius * radius;
}
}
console.log(Circle.pi); // returns 3.14
console.log(Circle.calculateArea(5)); // returns 78.5
const circle = new Circle();
circle.calculateArea(5); // Error TS2576: Property 'calculateArea' does not exist on type 'Circle'. Did you mean to access the static member 'Circle.calculateArea' instead?