メソッド: 1. 「関数名 (パラメーター、パラメーター)」ステートメントで呼び出します。 2. オブジェクトのメソッドとして呼び出します。構文は「オブジェクト名.メソッド名 ()」です。 3. 呼び出します。 call または apply の場合、構文は "関数名.call|apply(パラメーター, パラメーター)"; 4. 新しいコマンドを使用します。構文は "新しい関数名 (パラメーター, パラメーター)" です。
このチュートリアルの動作環境: Windows7 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。
JavaScript では、一般的な関数呼び出し、オブジェクトとしてのメソッド呼び出し、call と apply を使用した動的呼び出し、new を使用した間接呼び出しの 4 種類の関数呼び出しが提供されます。
1. 関数呼び出しの一般的な形式
デフォルト状態では、関数は実行されません。関数をアクティブにして実行するには、括弧 () を使用します。 0 個以上のパラメーターをカンマで区切って括弧内に含めることができます。
次の例では、かっこを使用して関数を呼び出し、2 番目の操作で戻り値を関数に直接渡します。これにより、2 つの一時変数を保存できます。
function f(x,y) { //定义函数 return x * y; //返回值 } console.log(f(f(5,6), f(7,8))); //返回1680。重复调用函数
2. オブジェクトとしてのメソッドの呼び出し
JavaScript では、関数をオブジェクトのメソッドとして定義できます。
次の例では、2 つのプロパティ (firstName と lastName) と 1 つのメソッド (fullName) を持つオブジェクト (myObject) を作成します。
var myObject = { firstName:"John", lastName: "Doe", fullName: function () { return this.firstName + " " + this.lastName; } } myObject.fullName(); // 返回 "John Doe"
3. call を使用し、動的に適用します。
call と apply は Function のプロトタイプ メソッドで、特定の関数をメソッドとして指定したオブジェクトにバインドして呼び出すことができます。具体的な使用法は次のとおりです。
function.call(thisobj, args...)
function.apply(thisobj, [args])
function は呼び出される関数を表します。 ; パラメータ thisobj は、バインディング オブジェクトは this によって参照されるオブジェクトを表し、パラメータ args は、呼び出される関数に渡されるパラメータを表します。 call メソッドは複数のパラメーター リストを受け取ることができますが、apply は配列または疑似クラス配列のみを受け取ることができ、配列要素はパラメーター リストとして呼び出された関数に渡されます。
次の例では、call を使用して関数 f を動的に呼び出し、パラメーター値 3 と 4 を渡し、操作値を返します。
function f(x,y) { //定义求和函数 return x + y; } console.log(f.call (null, 3, 4)); //返回7
all メソッドと apply メソッドの主な関数は次のとおりです。
関数を呼び出します。
関数本体内の this 参照オブジェクトを変更します。
はオブジェクト バインディング メソッドです。
制限を超えてさまざまなタイプのメソッドを呼び出します。
4. 新しいコマンドによる間接呼び出し
新しいコマンドを使用してオブジェクトをインスタンス化します。これがそのメイン関数ですが、関数内にあります。オブジェクトの作成中にアクティブ化されて実行されます。したがって、new コマンドを使用して関数を間接的に呼び出すことができます。
次の例は、新しいコマンドを使用して、渡されたパラメーター値をコンソールに表示する方法を簡単に示しています。
function (x,y) { //定义函数 console.log("x =" + x + ", y =" + y); } new f(3,4);
[推奨学習: JavaScript 上級チュートリアル]
以上がJavaScriptで関数を呼び出す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。