良いプログラマはJsとウェブの機能テストを共有します

  テストの優れた機能を共有するためのJSウェブプログラマー JS、一般的には、実際には、特定の操作をパッケージ化する機能を使用するか、またはモジュラー操作で書かれたプログラムに。

  。宣言機能

  1.通常の関数宣言

  関数ボックス(NUM1、NUM2){

  NUM1 + NUM2を返します。

  }

  2.変数の初期化関数を使用します

  VARボックス=関数(NUM1、NUM2){

  NUM1 + NUM2を返します。

  }。

  3. Functionコンストラクタ

  VARボックス=新しい機能( 'NUM1'、 'NUM2'、 'リターンNUM1 + NUM2');

  二つの値の関数として、

  それ自体のECMAScript関数名は変数であり、関数も値として使用することができます。換言すれば、同じようなパラメータは、別の関数に関数を渡す渡すことができるだけでなく、および機能は、他の関数の結果として返すことができます。

  関数ボックス(sumFunction、NUM){

  sumFunction(NUM)を返します。

  }

  Iは{(NUM)の機能します

  NUM + 10を返します。

  }

  VaRの結果=ボックス(合計10)。

  。内部プロパティを機能

  :関数の内部で、二つの特別なオブジェクトがある引数は、これが。引数は、配列オブジェクトのクラスである関数に渡されるすべてのパラメータが含まれています。主な目的は、引数を機能させます。しかし、このオブジェクトは、argumentsオブジェクト持つ関数へのポインタで呼び出し先のプロパティを、命名します。

  関数ボックス(NUM){

  IF(NUM <= 1){

  1を返します。

  }他{

  *リターンボックス(NUM-1)かどうか;

  }

  }

  階乗関数の場合は、再帰的なアルゴリズムを使用することが一般的であるので、内部関数が自分自身を呼び出します。関数名が変更されない場合、問題はありませんが、一度一つ一つを修正するための内部の必要性自体を呼び出し、関数名を変更しました。この問題を解決するために、我々は代わりにarguments.calleeを使用することができます。

  関数ボックス(NUM){

  IF(NUM <= 1){

  1を返します。

  }他{

  num戻り* arguments.calleeを(numは-1);

  }

  }

  別の特別なオブジェクトは、内部関数ですこれ、これと同様のでJavaのC#の振る舞い。換言すれば、これは、範囲が配置されていることを操作、または関数呼び出し文を実行する目的に応じて、機能を指します。PS:あなたがグローバルスコープで関数を呼び出すと、これはオブジェクト参照ウィンドウです。

  window.color =「赤」。

  警告(this.color)。

  各ボックス= {

  色:「青」、

  sayColor:関数(){

  警告(this.color)。

  }

  }。

  box.sayColor();

  警告(this.color)。

  四の関数プロパティとメソッド

  ECMAScriptのオブジェクトの関数であり、従って、機能、属性およびメソッドを有します。長さやプロトタイプ:各関数は、2つのプロパティが含まれています。ここで、lengthプロパティは、パラメータが受信された名前の所望の機能の数を表します。

  関数ボックス(名前、年齢){

  警告(名前+年齢)。

  }

  警告(box.length)。

  関数ボックス(NUM1、NUM2){

  NUM1 + NUM2を返します。

  }

  関数sayBox(NUM1、NUM2){

  box.apply返す(この、[NUM1、NUM2])。}

  関数sayBox2(NUM1、NUM2){

  box.apply(この、引数)を返します。

  }

  警告(sayBox(10,10));

  警告(sayBox2(10,10));

  同様に()メソッドの呼び出しは、()適用、それらは方法でのみ受信されたパラメータを異なります。()メソッドの呼び出しのために、最初のパラメータが範囲、変化なし、変化のみ残りのパラメータを関数に直接渡されているです。

  関数ボックス(NUM1、NUM2){

  NUM1 + NUM2を返します。

  }

  関数callBox(NUM1、NUM2){

  box.call(これ、NUM1、NUM2)を返します。

  }

  警告(callBox(10,10));

  VARの色=「赤」。

  各ボックス= {

  色:「青」

  }。

  機能sayColor(){

  警告(this.color)。

  }

  sayColor();

  sayColor.call(この);

  sayColor.call(ウィンドウ)。

  sayColor.call(箱)。

  私たちが使用している場合(ボックス)メソッドを呼び出すための時間を、ランタイム環境sayColor()メソッドは、ボックスオブジェクトとなっています。

  使用(コール)または(適用)最大の利点の範囲を拡大するために、オブジェクトがどの結合関係を必要とせず、結合方法が起こることを、意味は連鎖反応が起こります拡大し、維持、相互されています。

おすすめ

転載: www.cnblogs.com/gcghcxy/p/11389022.html