TECH I.S.

JavaScript 関数 apply()


メソッドの再利用

このapply()メソッドを使用すると、さまざまなオブジェクトで使用できるメソッドを作成できます。


JavaScript の apply() メソッド

apply()メソッドはcall()メソッド(前の章)に似ています。

この例では、personfullNameメソッドがperson1適用されます。

const person = {   fullName: function() {     return this.lastName + " " + this.firstName;   } } const person1 = {   lastName: "山田",   firstName: "花子" } // 山田花子を返します。 person.fullName.apply(person1);

自分で試してみる»


call() と apply() の違い

違いは次のとおりです。

このcall()メソッドは引数を個別に受け取ります。

このメソッドは引数を配列apply()として受け取ります。


引数リストの代わりに配列を使用する場合は、apply() メソッドが非常に便利です。





引数付きの apply() メソッド

このapply()メソッドは配列内の引数を受け取ります。

const person = {   fullName: function(city, country) {     return this.lastName + " " + this.firstName + "," + city + "," + country;   } } const person1 = {   lastName:"山田",   firstName: "太郎" } person.fullName.apply(person1, ["東京", "日本"]);

自分で試してみる»

call()メソッドとの比較:

const person = {   fullName: function(city, country) {     return this.lastName + " " + this.firstName + "," + city + "," + country;   } } const person1 = {   lastName:"山田",   firstName: "太郎" } person.fullName.call(person1, "東京", "日本");

自分で試してみる»



配列で Max メソッドをシミュレートする

Math.max()メソッドを使用して、(数値のリスト内の) 最大の数値を見つけることができます。:

Math.max(1,2,3);  // 3を返します。

自分で試してみる»

JavaScript配列にはmax() メソッドがないため、代わりにMath.max()メソッドを適用できます。

Math.max.apply(null, [1,2,3]); // 3を返します。

自分で試してみる»

最初の引数 (null) は重要ではありません。この例では使用しません。

これらの例では、同じ結果が得られます。

Math.max.apply(Math, [1,2,3]); //3を返します。

自分で試してみる»

Math.max.apply(" ", [1,2,3]); //3を返します。

自分で試してみる»

Math.max.apply(0, [1,2,3]); //3を返します。

自分で試してみる»


JavaScript Strictモード

JavaScript strict モードでは、apply()メソッドの最初の引数がオブジェクトではない場合、それが呼び出された関数の所有者 (オブジェクト) になります。「non-strict」モードでは、グローバル オブジェクトになります。



プログラミング学習を加速させる

プログラミングをプロの講師に教えてもらいませんか。

テックアイエスのプログラミングスクールは初心者も大歓迎です。年齢制限もありません。転職・副業に強く、挫折させない手厚いサポートで稼ぐ力を身につけましょう!

スクールの詳細