JavaScript オブジェクトメソッド
例
const <strong>person</strong> = {
firstName: "John",
lastName: "Doe",
id: 5566,
fullName: function() {
return <strong>this</strong>.firstName + " " + <strong>this</strong>.lastName;
}
};
thisとは?
JavaScriptでは、this
はオブジェクトを指します。
どのthis
オブジェクトがどのように呼び出されるか(使用または呼び出されるか)によって決まります。
this
は、使用方法に応じてさまざまなオブジェクトを参照します。オブジェクトメソッドでは、オブジェクトthis を参照します。 |
単独で、グローバルオブジェクトthis を参照します。 |
関数では、グローバルオブジェクトthis を参照します。 |
関数のstrictモードでは、this は未定義です。 |
イベントでは、イベントを受信した要素this を指します。 |
call() 、apply() 、bind() などのメソッドは、this を任意のオブジェクトに参照できます。 |
注記this
は変数ではありません。キーワードです、this
の値は変更できません。
関連項目:JavaScriptthisチュートリアル
JavaScriptメソッド
JavaScriptメソッドは、オブジェクトに対して実行できるアクションです。
JavaScriptメソッドは、関数定義を含むプロパティです。
Property |
Value |
---|---|
firstName | John |
lastName | Doe |
age | 50 |
eyeColor | blue |
fullName | function(){return this.firstName + " " + this.lastName;} |
メソッドは、オブジェクトのプロパティとして保存される関数です。
オブジェクトメソッドへのアクセス
次の構文でオブジェクトメソッドにアクセスします。
<div><i>objectName.methodName()</i></div>
通常、fullName()をpersonオブジェクトのメソッドとして記述し、fullNameをプロパティとして記述します。
fullNameプロパティは、()で呼び出されると(関数として)実行されます。
この例では、personオブジェクトのfullName()メソッドにアクセスします。
()なしでfullNameプロパティにアクセスすると、関数定義が返されます。
オブジェクトへのメソッドの追加
新しいメソッドをオブジェクトに追加するのは簡単です。
組み込みメソッドの使用
この例では、toUpperCase()
Stringオブジェクトのメソッドで、テキストを大文字に変換します。
<div>let message = "Hello world!";
let x = message.toUpperCase();</div>
上記のコードを実行した後のxの値は次のようになります。
<div>HELLO WORLD!</div>
例
person.name = function () {
return (this.firstName + " " + this.lastName).toUpperCase();
};
プログラミング学習を加速させる
プログラミングをプロの講師に教えてもらいませんか。