javascript class

JavaScript
class ClassMates{
	constructor(name,age){
    	this.name=name;
      	this.age=age;
    }
  	displayInfo(){
    	return this.name + "is " + this.age + " years old!";
    }
}

let classmate = new ClassMates("Mike Will",15);
classmate.displayInfo();  // result: Mike Will is 15 years old!class Person {
 constructor(name, age) {
   this.name = name;
   this.age = age;
 }
  present = () => { //or present(){
  	console.log(`Hi! i'm ${this.name} and i'm ${this.age} years old`) 
  }
}
let me = new Person("tsuy", 15);
me.present();
// -> Hi! i'm tsuy and i'm 15 years old.// Improved formatting of Spotted Tailed Quoll's answer
class Person {
	constructor(name, age) {
		this.name = name;
		this.age = age;
	}
	introduction() {
		return `My name is ${name} and I am ${age} years old!`;
	}
}

let john = new Person("John Smith", 18);
console.log(john.introduction());//JavaScript class: Here a quick code example

// Basic class
class Rectangle {
  
  // Constructor
  constructor(height, width) {
    // Member variables
    this.height = height;
    this.width = width;

    // Access static member variable
    Rectangle.count++;
  }
  
  // Getter
  get area() {
    return this.calcArea();
  }
  
  // Method
  calcArea() {
    return this.height * this.width;
  }

  // Static method
  static calcArea(width, height) {
    return width * height;
  }
}

// Static member variable
Rectangle.count = 0;


// Class instantiation
const square = new Rectangle(10, 10);

// Access member variable
console.log(square.height, square.width); // 10 10

// Call getter
console.log(square.area);	// 100

// Call method
console.log(square.calcArea()); // 100


// Access static member variable
console.log(Rectangle.count); // 1

// Call static method
console.log(Rectangle.calcArea(15, 15));  // 225//use classes by initiating one like so:
class MyClass {
	constructor(FirstProperty, SecondProperty, etcetera) {
    	//The constructor function is called with the new class 
      	//instance's parameters, so this will be called like so:
      	//var classExample = new MyClass("FirstProperty's Value", ...)
      this.firstProperty = FirstProperty;
      this.secondProperty = SecondProperty;
    }
  //creat methods just like functions:
  method(Parameters) {
  	//Code Here
  }
  //getters are properties that are calculated when called, versus fixed
  //variables, but still have no parenthesis when used
  get getBothValues() 
  {
  	return [firstProperty, secondProperty];
  }
}
//Note: this is all syntax sugar reducing the boilerplate versus a
// function-defined object.class Rectangle {
  constructor(height, width) {
    this.height = height;
    this.width = width;
  }
  // Getter
  get area() {
    return this.calcArea();
  }
  // Method
  calcArea() {
    return this.height * this.width;
  }
}

const square = new Rectangle(10, 10);

console.log(square.area); // 100
Source

Also in JavaScript: