Get to know MDN better
このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。
JavaScript の例外 "must call super constructor before using 'this' in derived class constructor" は、派生クラスのコンストラクターで super() を呼び出していない状態で、this の値にアクセスしようとした場合や、派生コンストラクターがすでに終了しており、その戻り値がオブジェクトでない場合に発生します。
super() の呼び出しは、派生クラスのコンストラクターに対する new 呼び出しごとに最大 1 回しか行えません。多くの場合、ちょうど 1 回呼び出す必要があります。なぜなら、これを呼び出さないと親クラスのコンストラクターが this を初期化できず、派生コンストラクター内で this にアクセスできないためです。この状態のまま派生コンストラクターが終了すると、this は正しく構築されたオブジェクトと見なされず、例外が発生します。これを回避する方法として、派生クラスのコンストラクターからオブジェクトを返すことが挙げられます。この場合、 this の代わりに返されたオブジェクトが構築結果として使用されるため、super() を呼び出さなくても済みます。ただし、この方法が使われることはほとんどありません。
This page was last modified on 2026年4月15日 by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.