JavaScriptの違いを呼び出してバインドし、適用されます

JSでは、この3点は、彼らはそれを持っている違いの種類、このオブジェクトの機能を変更するために使用されています。
差はまだ3つの類似点をまとめると言われる前に:
1を、このオブジェクトの機能のポイントを変更するために使用されています。
図2に示すように、最初の引数は、このオブジェクトを指すようになります。
図3に示すように、後続のパラメータは、パラメータ渡しを使用することができます。
だからここで両者の差があり、そして例を見て。

  1.                 VaRのXW = {
  2.                         名前:「エイミー」
  3.                         性別: "男"、
  4.                         年齢:24、
  5.                         言う:関数(){
  6.                                 警告(this.name + "" + this.gender + "今年" + this.age)。                                
  7.                         }
  8.                 }
  9.                 ここで、XH = {
  10.                         名前:「リトル・レッド」
  11.                         性別: "女"、
  12.                         年齢:18
  13.                 }
  14.                 xw.say();
コードをコピー

自身ディスプレイは確かに王、男性、24、今年で、何も言うことはありません。
だから、どのようにそれをXH XWデータを表示する方法を言うために。
コールのために使用できます

  1. xw.say.call(XH)。
コードをコピー

あなたはこのために適用することができます。

  1. xw.say.apply(XH)。
コードをコピー

そしてそれは、これをバインドする必要があります。

  1. xw.say.bind(XH)();
コードをコピー

あなたはxw.say.bind(XH)の任意すぐに結果を持っていないを記述する場合、まだ違いを参照してください?まだバインドメソッドは関数を返すので、(バックする必要がありながら、缶と呼ばれるように)、関数のすべての直接の呼び出しを呼び出して適用します。
だから、それをしないどのような違い呼び出して適用されますか?私たちは、いくつかの再起草の例を持っています。

  1.                 VaRのXW = {
  2.                         名前:「エイミー」
  3.                         性別: "男"、
  4.                         年齢:24、
  5.                         言う:機能(学校、学年){
  6.                                 警告(this.name + "" + this.gender + "今年" + this.age + "在" +学校+ "上" +グレード)。                                
  7.                         }
  8.                 }
  9.                 ここで、XH = {
  10.                         名前:「リトル・レッド」
  11.                         性別: "女"、
  12.                         年齢:18
  13.                 }
コードをコピー

/適用呼び出す見ることができる方法は、以上の2つのパラメータを言う、我々は、参照パラメータで渡します。
この呼び出しのためにあります

  1. xw.say.call(XH、「実験小学校」、「六年生」)。       
コードをコピー

以下のための適用はこれです

  1. xw.say.apply(XH、[ "実験小学校"、 "六年生鄭州乾癬病院 "]);
コードをコピー

コールバック及びパラメトリック方法は、1個であると言う、まだ差を見て、2番目の引数が配列である適用、アレイ要素であり、最大でもある1つのメソッドに1を言います違い。
それでは、どのようバインドパラメータを渡し?これは、コールのようなパラメータとして渡すことができます。

  1. xw.say.bind(XH、 "実験小学校"、 "六年生")();
コードをコピー

しかし、まだ返す関数をバインドするので、呼び出されたときに我々は、パラメータを渡すことができます。

  1. xw.say.bind(XH)( "実験小学校"、 "六年生")。

これは、スイッチ:https://www.cnblogs.com/cosiray/p/4512969.html

おすすめ

転載: www.cnblogs.com/ruilin/p/11613203.html