9.6Classes & Constructors / No Duplicate Members

クラスメンバーの重複を避ける

重複したクラスメンバーは避けてください。重複したクラスメンバー宣言は、最後のものが静かに優先されます。これはほとんどの場合バグです。

同じ名前のメソッドを複数定義すると、エラーは発生せずに後の定義が前の定義を上書きします。これは通常、コピー&ペーストのミスやリファクタリングの見落としによって発生し、意図しない振る舞いを引き起こすバグの原因となります。

❌ Bad
// bad
class Foo {
  bar() { return 1; }
  bar() { return 2; }
}
✅ Good
// good
class Foo {
  bar() { return 2; }
}