クラスの落とし穴1 - プロパティの初期化 クラスの落とし穴2 - メソッドとクロージャ クラスの落とし穴3 - 継承(この投稿) クラスの落とし穴4 - プライベート変数の実装 はじめに 今回はクラスの継承の違いによる落とし穴です。 継承とプロトタイプチェーン。同じようで同じじゃないやっぱりある落とし穴はなんでしょうか。 javascriptはプロトタイプベースのため、PHPやjavaのように継承の方法に明確な構文がありません。 そのため、継承に似たものを工夫して実装することになります。 少なくとも継承にプロトタイプチェーンを使用すれば良いだろうというのは理解されていると思いますが、実際にはこれが一番の方法で後は全部だめ!というパターンはありません。 ただ、安易な実装は思っている動作とじつは異なる動作をしている事があります。 ここでは一番簡単な方法から継承を実装して確認します。 よくある
![クラスの落とし穴3 - 継承 - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/78eacbc37af5b9aac2568aa81b4aeb80a8cb2264/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9JUUzJTgyJUFGJUUzJTgzJUE5JUUzJTgyJUI5JUUzJTgxJUFFJUU4JTkwJUJEJUUzJTgxJUE4JUUzJTgxJTk3JUU3JUE5JUI0MyUyMC0lMjAlRTclQjYlOTklRTYlODklQkYmdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT01NiZ0eHQtY2xpcD1lbGxpcHNpcyZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPTVhNTNmMDU0NWFmMmRmM2JkNjlhOWY0YzM3Nzg2YTEz%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwY29jb3R0ZWpzJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz1jNzgzMDgyZmFiOThlMmMxM2QyNDYyMTY3ZmE3ZGU1Yw%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3D21800f1fab2b78ab5c79f4c5febafaa2)