9.3Classes & Constructors / Chaining

メソッドチェーン

メソッドチェーンを可能にするために、メソッドは`this`を返すことができます。

メソッドが `this` (インスタンス自身) を返すことで、`luke.jump().setHeight(20)` のように、同じインスタンスに対して複数のメソッドを連続して呼び出すことができます。これは流れるようなインターフェース(Fluent Interface)と呼ばれ、コードがより簡潔で読みやすくなります。

❌ Bad
// bad
Jedi.prototype.jump = function () {
  this.jumping = true;
  return true;
};
✅ Good
// good
class Jedi {
  jump() {
    this.jumping = true;
    return this;
  }

  setHeight(height) {
    this.height = height;
    return this;
  }
}