Skip to content

Commit 6a0048d

Browse files
authored
constructor() で super() を呼ばずに this を参照した場合に出るエラー (#1241)
SyntaxError とありますが、ReferenceError が発生します。
1 parent 2c6c097 commit 6a0048d

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

source/basic/class/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -999,7 +999,7 @@ class Child extends Parent {
999999
コンストラクタの処理順は、親クラスから子クラスへと順番が決まっています。
10001000

10011001
`class`構文では必ず親クラスのコンストラクタ処理(`super()`の呼び出し)を先に行い、その次に子クラスのコンストラクタ処理を行います。
1002-
子クラスのコンストラクタでは、`this`を触る前に`super()`で親クラスのコンストラクタ処理を呼び出さないと`SyntaxError`となるためです。
1002+
子クラスのコンストラクタでは、`this`を触る前に`super()`で親クラスのコンストラクタ処理を呼び出さないと`ReferenceError`となるためです。
10031003

10041004
次のコードでは、`Parent``Child`でそれぞれインスタンス(`this`)の`name`プロパティに値を書き込んでいます。
10051005
子クラスでは先に`super()`を呼び出してからでないと`this`を参照できません。

0 commit comments

Comments
 (0)