Trusted answers to developer questions
Trusted Answers to Developer Questions

Related Tags

react
setup
communitycreator

What are ES6 classes?

Chinweuba Elijah Azubuike

Overview

The ubiquitous JavaScript approach of emulating class-like inheritance hierarchies via functions and prototypes is formalized in ES6 Classes. They’re essentially sugar on top of prototype-based OO, providing a declarative form for class patterns that promote interoperability.

Just like every programming language class, Javascript ES6 supports the following features:

  • Prototype-based inheritance
  • Constructors
  • Super calls
  • Instance and static methods

Let's create a class.

Example

Let's look at the code below:


'use strict';

// Example 1: Creating a new class

// using the keyword 'class' to define the base class
class Biography {
  // constructor() { }
  constructor(dob, sex) {
    this.name = 'John Doe';
    this.dob = dob;
    this.sex = sex;
  }

  // method declarations of the class
  
  sayName() {
    console.log('Hi, I am a ', this.name + '.');
  }

 

}

// Classes are used just like ES5 constructor functions:
let p = new Biography(1994, 'Female');
p.sayName();
console.log('My gender is ' + p.sex);
ES6 class

Explanation

In the above code:

Line 7: We create a class Biography .

Lines 11 to 15: We declare class properties.

Lines 19 to 21: We instantiate a method sayName() to log the name property.

Line 28: We instantiate the class on p variable.

Line 29: We access the class method sayName() .

Line 30: We access the class properties sex .

You can play around with the code sample for better understanding.

RELATED TAGS

react
setup
communitycreator

CONTRIBUTOR

Chinweuba Elijah Azubuike
RELATED COURSES

View all Courses

Keep Exploring