回答編集履歴
2
訂正
    
        answer	
    CHANGED
    
    | @@ -4,6 +4,6 @@ | |
| 4 4 |  | 
| 5 5 | 
             
            インスタンスが直接 ``p2`` プロパティを有しているように値``void 0``(``undefined``)を定義したと考えるべきです。
         | 
| 6 6 |  | 
| 7 | 
            -
            おそらくですが、トランスパイラが | 
| 7 | 
            +
            おそらくですが、トランスパイラがプロトタイプサーチに係るパフォーマンスを優先した結果だと思います(誤差として見逃しがちな内容です)。
         | 
| 8 8 |  | 
| 9 9 | 
             
            後から明確な値 ``p2`` が代入されるなら問題ありませんし、``Child2`` の constructor() 内にある ``this.p2 = 'a'`` は不要です。
         | 
1
訂正
    
        answer	
    CHANGED
    
    | @@ -1,9 +1,9 @@ | |
| 1 1 | 
             
            > 自動的にconstructor()の中に ``this.p2 = void 0`` と挿入される
         | 
| 2 2 |  | 
| 3 | 
            -
            ``this.p2 = void 0`` が挿入されない場合、[[Prototype]] から参照される親オブジェクトの ``p2`` プロパティを探そうとします。
         | 
| 3 | 
            +
            ``this.p2 = void 0`` が挿入されない場合、[[Prototype]] から参照される親オブジェクトの ``p2`` プロパティを探そうとします(**プロトタイプサーチ**)。
         | 
| 4 4 |  | 
| 5 | 
            -
            インスタンスが直接 ``p2`` プロパティを有しているように``void 0``(``undefined``)を定義したと考えるべきです。
         | 
| 5 | 
            +
            インスタンスが直接 ``p2`` プロパティを有しているように値``void 0``(``undefined``)を定義したと考えるべきです。
         | 
| 6 6 |  | 
| 7 | 
            -
            おそらくですが、トランスパイラがパフォーマンスを優先した結果だと思います。
         | 
| 7 | 
            +
            おそらくですが、トランスパイラが誤差として見逃しがちなプロトタイプサーチに係るパフォーマンスを優先した結果だと思います。
         | 
| 8 8 |  | 
| 9 9 | 
             
            後から明確な値 ``p2`` が代入されるなら問題ありませんし、``Child2`` の constructor() 内にある ``this.p2 = 'a'`` は不要です。
         | 
