1. ホーム
  2. javascript

JavaScriptにはクラスがありますか?

2023-11-10 06:26:42

質問

先週、友人と口論になりました。彼は JavaScript にはクラスというものが存在しないと述べました。

私は、あなたが言うように、あるのだと言いました。 var object = new Object()

曰く、"as there is no word class が使われています。クラスではないので"。

誰が正しいのでしょうか?


メモとして、将来的にClassy JSの実装を簡潔にする必要がある場合。

https://github.com/tnhu/jsface


編集:2017年7月

ECMAScript 2015 で導入された JavaScript クラスは、主に JavaScript の既存のプロトタイプベースの継承の上に構文的な砂糖を乗せたものです。クラス構文は、JavaScript に新しいオブジェクト指向の継承モデルを導入しているわけではありません。JavaScript のクラスは、オブジェクトを作成し、継承を処理するための、より単純で明確な構文を提供します。

- Mozilla ES6 クラス。 https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Classes

どのように解決するのですか?

技術的には、"JavaScript has no classes"という記述は正しいです。

JavaScriptはオブジェクト指向の言語ですが、オブジェクト指向のための クラスベースの言語 -であり、それは プロトタイプベースの言語 . この2つのアプローチには違いがありますが、JavaScriptをクラスベースの言語のように使うことができるため、(私を含め)多くの人はコンストラクタ関数を単に "クラス" と呼ぶことが多いようです。