javascript
  1. javascript-abstraction

JavaScript Abstraction

Abstraction is a technique in programming that allows us to hide complexity and details and show only the necessary information to the user. It is one of the core features of object-oriented programming (OOP). In JavaScript, abstraction can be achieved through the use of classes and objects.

Syntax

class ClassName {
  // properties and methods
}

Example

class Animal {
  constructor(name) {
    this.name = name;
  }
  eat() {
    console.log(`${this.name} is eating.`);
  }
}
class Dog extends Animal {
  constructor(name, breed) {
    super(name);
    this.breed = breed;
  }
  bark() {
    console.log(`${this.name} is barking.`);
  }
}
let jimmy = new Dog("Jimmy", "Golden Retriever");
jimmy.eat();
jimmy.bark();

Output

Jimmy is eating.
Jimmy is barking.

Explanation

In the above example, we have two classes: Animal and Dog. The Animal class has one property name and one method eat(). The Dog class extends the Animal class and has two properties name and breed, and one method bark().

We create an instance of the Dog class using the new keyword and passing two arguments name and breed. Then we call the methods eat() and bark() on the jimmy object.

Use

Abstraction is widely used in the development of complex applications to make the code more modular, maintainable, and scalable. It allows us to encapsulate the implementation details of a class or object and expose only the necessary functionality to the user.

Important Points

  • Abstraction in JavaScript can be achieved through the use of classes and objects.
  • Abstraction allows developers to hide complexity and details and show only the necessary information to the user.
  • Abstraction is a core feature of object-oriented programming.

Summary

Abstraction is an important concept in programming that allows developers to hide complexity and details and expose only the necessary information to the user. It is widely used in the development of complex applications to make the code more modular, maintainable, and scalable. In JavaScript, abstraction can be achieved through the use of classes and objects.

Published on: