Java、C#、その他の言語と同様、JavaScript にもオブジェクト指向の特徴がいくつかありますが、注意深く比較すると、これらの特徴は真のオブジェクト指向ではないことが多くの場合、オブジェクト自体がシミュレーションに使用されます。オブジェクト指向であるため、JavaScript はオブジェクト指向プログラミング言語とはみなされませんが、オブジェクトベースの言語です。
JavaScript では、実際にはすべてがオブジェクトです。new によって作成されたものはオブジェクトであり、メソッドはオブジェクトであり、クラスもオブジェクトです。オブジェクト、メソッド、クラスのそれぞれのオブジェクト特性を見てみましょう。
1. 組み込みの日付を確認します
var time = new Date();
var timeString = time.getFull Year() "-"
time.getMonth() "-"
時間。 getDate() " "
time.getHours() ":"
time.getMinutes() ":"
time.getSeconds();
document.write(timeString); 🎜>
時刻で参照される Date オブジェクトを操作することで、Date オブジェクトに含まれる一連の getXX() メソッドを簡単に呼び出して、年、月、日、時、分、秒などの情報を取得することができます。
文字列をもう一度見てみましょう
var username = new String("hello world");
document.write(username.length);
変数 username は、new によって生成された文字列オブジェクトと長さ属性を参照します。文字列オブジェクトのアクセスにはユーザー名を使用します。
2. メソッドもオブジェクトです
関数 hello() {
alert("hello");
var helloRef = hello(); hello はメソッド、 helloRef は hello メソッドを参照する変数です。 HelloRef と hello は両方とも同じメソッド オブジェクトを指します。これは、helloRef も実行できることを意味します (helloRef())。同様に、次のようなコードも書くことができます。
コードをコピー
コードは次のとおりです。
function(){alert("hello")} も匿名メソッドですhelloRef 変数によって参照されるオブジェクト メソッド オブジェクトの後に、helloRef を通じてメソッドを呼び出すことができます。
3. 授業についてはどうですか?
もちろん、クラスもオブジェクトです。C# や Java とは異なり、クラスを作成するための class キーワードはありません。代わりに、メソッド キーワードを直接使用してクラスを作成したり、クラスをシミュレートしたりします。
コードをコピー
コードは次のとおりです:
var person1 ("Zhang San", 20); >
上記のコードは person タイプを作成します。person にはユーザー名と年齢という構築パラメーターがあり、作成された person オブジェクトを通じて person に含まれるメソッド Introduction を呼び出すことができます。以下のコードにいくつかの変更を加えます。
コードをコピー
コードは次のとおりです:
function person(username, age) {
this .Name = ユーザー名;
this.Age = 年齢;
this.Recruit = function() {
alert("私の名前は " this.Name "、そして今年は " this です.年齢 " 歳。") ; }; var personClass ("Zhang San", 20); (); 新しい変数 PersonClass を再宣言し、PersonClass と Person の両方が元の Person によって参照されるクラスを参照するため、オブジェクトを作成するために PersonClass を使用することもできます。
上記の例はあまり適切ではないかもしれませんが、JavaScript のすべてがどのようにオブジェクトであるかを垣間見ることができます。
次のセクションでは、JavaScript のオブジェクトについて詳しく説明します。