javascript

Javascript: Working With Classes

Introduced in ES6 as a major update to the Object Oriented Programming concept in Javascript, Classes are templates for creating objects.

Classes can also referred to as the “syntactic sugar” of constructor functions. This means that they are an alternative way of writing constructor functions.

Working With a Class

One way to define a class is to use the class declaration. To declare a class, you use the “class” keyword followed by the name of the class.

class Rectangle{
}

Using constructor Method

A constructor method is a special method created within a declared class.

Constructor methods are used to initialize object properties created within that class.

There can only be one special method with the name “constructor” within a class. A syntaxError will be thrown if a class contains more than one instance of a constructor method.

class Rectangle{
constructor(width, height){
this.width = width;
this.height = height;
}
}

Class Methods

class methods can be referred to as a special method within your declared class.

This special class manipulates, interacts with or showcase the object properties created with the constructor method.

For instance, after declaring the properties “width” and “height” of the Rectangle class, it is possible that we also want to interact with these declared properties and perform some kind of calculation with them.

Also, after creating this special method that performs the calculation, we might also want to create another method that calls this method so that the result can be seen when it is called through the class instance.

class Rectangle{
constructor(width, height){
this.width = width;
this.height = height;
}

//Method
calcArea(){
return this.width * this.height;
}

//Getter
getArea(){
return this.calcArea();
}
}

Just writing the code like this and running it won’t give any result.

We need to now create an instance of this our “Rectangle” class so that we can showcase the logic that we have created.

We create an instance like so …

const rectangle = new Rectangle(10,10);
console.log(rectangle.getArea()); //100

Full Working Code:

class Rectangle{
constructor(width, height){
this.width = width;
this.height = height;
}

//Method
calcArea(){
return this.width * this.height;
}

//Getter
getArea(){
return this.calcArea();
}
}

const rectangle = new Rectangle(10,10);
console.log(rectangle.getArea()); //100

Recent Posts

What Exactly is Docker?

Imagine moving to a new apartment. Instead of disassembling your furniture, rebuilding pipes, and rewiring…

3 days ago

Event Delegation in JavaScript

Imagine you’re the principal of a large school. Every day, students (like buttons, links, or…

4 days ago

The DRY Concept (Don’t Repeat Yourself)

You know that thing you do? Where you copy a chunk of code, paste it…

1 week ago

What Truly Makes a Great Software Developer

We've all seen them. The developers who seem to effortlessly untangle complex problems, whose code…

1 week ago

How to Filter Vulgar Words in React Native

If you're building a social, chat, or comment-based mobile app using React Native, protecting your…

2 weeks ago

How to Build Faster Mobile Apps With Native Wind Library

The Cross-Platform ImperativeLet's face it: building separate iOS and Android apps wastes resources. React Native…

3 weeks ago