JavaScriptで関数を呼び出す方法にはどのようなものがありますか?

coldplay.xixi
リリース: 2023-01-04 09:35:43
オリジナル
3073 人が閲覧しました

関数を呼び出すための Javascript メソッドは次のとおりです: 1. コンストラクターを使用して関数を呼び出します (コードは [function myFunction(arg1, arg2)] です); 2. 関数を関数メソッドとして呼び出します。

JavaScriptで関数を呼び出す方法にはどのようなものがありますか?

このチュートリアルの動作環境: Windows 7 システム、JavaScript バージョン 1.8.5、DELL G3 コンピューター。

関数を呼び出すための Javascript メソッドは次のとおりです:

1. コンストラクターを使用して関数を呼び出します

new が使用される場合関数呼び出しキーワードの前に、コンストラクターが呼び出されます。

これは新しい関数が作成されたように見えますが、実際には JavaScript 関数はオブジェクトを再作成します。

Instance

// 构造函数:
function myFunction(arg1, arg2) {
    this.firstName = arg1;
    this.lastName  = arg2;
}
 
// This    creates a new object
var x = new myFunction("John","Doe");
x.firstName;                             // 返回 "John"
ログイン後にコピー

コンストラクターの呼び出しにより、新しいオブジェクトが作成されます。新しいオブジェクトはコンストラクターのプロパティとメソッドを継承します。

  • 注 コンストラクター内の this キーワードには値がありません。

  • this の値は、オブジェクト (新しいオブジェクト) をインスタンス化するために関数が呼び出されたときに作成されます。

#2. 関数を関数メソッドとして呼び出す

JavaScript では、関数はオブジェクトです。 JavaScript 関数にはプロパティとメソッドがあります。

call() と apply() は事前定義された関数メソッドです。関数の呼び出しには 2 つのメソッドを使用できます。両方のメソッドの最初のパラメータはオブジェクト自体である必要があります。

Example

function myFunction(a, b) {
    return a * b;
}
myObject = myFunction.call(myObject, 10, 2);     // 返回 20
ログイン後にコピー

Example

function myFunction(a, b) {
    return a * b;
}
myArray = [10, 2];
myObject = myFunction.apply(myObject, myArray);  // 返回 20
ログイン後にコピー
両方のメソッドは、オブジェクト自体を最初のパラメータとして使用します。 2 つの違いは 2 番目のパラメータにあります。apply はパラメータ配列で渡されます。つまり、複数のパラメータが 1 つの配列に結合されて渡されますが、call は call のパラメータとして (2 番目のパラメータから開始して) 渡されます。

  • JavaScript 厳密モード (strict モード) では、パラメーターがオブジェクトでなくても、関数を呼び出すときに最初のパラメーターが this の値になります。

  • JavaScript の非厳密モード (非厳密モード) では、最初のパラメーターの値が null または未定義の場合、代わりにグローバル オブジェクトが使用されます。

関連する無料学習の推奨事項:

JavaScript ビデオ チュートリアル

以上がJavaScriptで関数を呼び出す方法にはどのようなものがありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート