Understanding classes in javascript

Heru Hartanto - Nov 28 '21 - - Dev Community

ES6 introduced classes, it's often used by front-end libraries such as react, in simple term classes are special kind of functions.

function Car(type,brand){
    this.type= type;
    this.brand = brand;
}
Car.prototype.getDescription = function(){
    console.log(`This car is ${this.type} from brand ${this.brand}`)
}

let newCar = new Car('Jazz','Honda')
newCar.getDescription()

Enter fullscreen mode Exit fullscreen mode

Before classes introduce in ES6, the best way to create an object template was using functions, but now we can create an object template using classes.

As above example can be rewritten with class in following way

class Car{
    constructor(type,brand){
        this.type= type;
        this.brand = brand;
    }
    getDescription=()=>{
        console.log(`This car is ${this.type} from brand ${this.brand}`)
    }
}
let newCar = new Car('Jazz','Honda')
newCar.getDescription()
Enter fullscreen mode Exit fullscreen mode

Now we have more better approach for creating object template in the form of classes.

The difference between functions and classes in simple are:

  • classes are blueprint for javascript object
  • function are the way to package reusable code

Therefore, when we need to make reusabled block of code that used multiple time, we can package those block inside function, However
when we need to create an object that needs to generated mulitple times then use classes

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Terabox Video Player