ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript 関数の属性とメソッド_JavaScript スキルに関する簡単な説明
各関数には、長さとプロトタイプという 2 つのプロパティが含まれています
長さ: 現在の関数が受け入れることを希望する名前付きパラメータの数
プロトタイプ: それは彼らのすべての強さのメソッドを保存する本当の場所です
各関数には、apply() と call() という 2 つの非継承メソッドが含まれています
これら 2 つのメソッドは、特定のスコープ内の関数を呼び出します。これは、実際には関数本体
でこのオブジェクトの値を設定するのと同じです。
まず、apply() は 2 つのパラメーターを受け入れます。1 つは関数が実行されるスコープで、もう 1 つはパラメーター配列 (配列インスタンスまたは引数オブジェクトにすることができます)
次に、call メソッドの最初のパラメーターは変更されていません。変更された点は、残りのパラメーターはすべて、関数に渡されるパラメーターを 1 つずつリストする必要があることです。
どちらの方法がより便利であるかは、すべてあなたの希望次第です。パラメータがない場合はどちらを使用しても同じになります。
ただし、apply メソッドと call メソッドは、ハル パラメータを取得するためだけのものではありません。
彼らの武道の本当の使い方は、機能の拡張にあります。
apply と call を使用してスコープを拡張する最大の利点は、メソッドとの結合関係が必要ないことです。
ECMAScript5 では、bind() メソッドも定義されています。このメソッドは、この値がバインド関数
に渡される値にバインドされる関数のインスタンスを作成します。以上がこの記事の全内容です。気に入っていただければ幸いです。