javascript class function example

Example 1: javascript class

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!

Example 2: javascript new function as class

// Javascript Function that behaves as class, with private variables
function Person(name){
    const birth = new Date();
    this.greet = () => `Hello my name is ${name}. I was born at ${birth.toISOString()}`;
}

const joe = new Person("Joe");
joe.greet(); // Hello my name is Joe. I was born at 2021-04-09T21:12:33.098Z
// The birth variable is "inaccessible" from outside so "private"

Example 3: javascript class

// 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());

Example 4: javascript classes

//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.

Example 5: javascript class

//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