profileRyan KesPGP keyI build stuffEmailGithubTwitterLast.fmMastodonMatrix

JavaScript Class Notation

Introduction

By convention, the names of constructors are capitalized so that they can easily be distinguished from other functions. Thanks to ECMAScript 2015 above can be achieved with a saner notation:

Example

class Rabbit {
  constructor(type) {
    this.type = type
  }
  speak(line) {
    console.log(`The ${this.type} rabbit says '${line}'`)
  }
}

let killerRabbit = new Rabbit("killer")
let blackRabbit = new Rabbit("black")

killerRabbit.speak("I want blood!")
blackRabbit.speak("For some reason I appreciate Tyler Perry movies")

If one must one can also use class in expressions:

let object = new (class {
  getWord() {
    return "hello"
  }
})()
console.log(object.getWord())

Related