JavaScript logoJavaScript/
JS-0105

Class methods should utilize `this`JS-0105

Minor severityMinor
Anti-pattern categoryAnti-pattern

If a class method does not use this, it can sometimes be made into a static function. If you do convert the method into a static function, instances of the class that call that particular method have to be converted to a static call as well (MyClass.callStaticMethod())

Bad Practice

class Person {
  sayHi() {
    const greeting = document.createElement("div");
    greeting.innerText = "Hello!";
    document.appendChild();
  }
}

const person = new Person();
person.sayHi();
class Person {
  static sayHi() {
    const greeting = document.createElement("div");
    greeting.innerText = "Hello!";
    document.appendChild();
  }
}

Person.sayHi();