JS /適用、呼び出し、バインドの違い

コール、適用は、これらの三つの方法は、実際にインスタンスメソッドに属するのFunction.prototypeから継承されているバインド

1、適用されます

  適用方法のこの機能にダイレクトコール機能が実行され、適用されます変更の配列を渡すパラメータ

  例:

    関数FN1(){にconsole.log(この、A)}

    = { 'B':11} OBJせ

    fn1.apply(OBJ1、[22])// { 'B':11}、22

2、コール

  方法のこの機能および機能にダイレクトコールが実行され、なおを適用変化コール使用する場合、単一の形で渡されたパラメータを

  例:

    関数FN1(){にconsole.log(この、A)}

    = { 'B':11} OBJせ

    fn1.call(OBJ1、22)// { 'B':11}、22

3、バインド

  この機能に向け適用するメソッド呼び出しを変更、機能は、この新世代の機能を変更しない、新たに生成された関数がコールまたは無効に適用されるパラメータとコールなどの伝送方法を使用して、新たに生成され実行されません

  例:

    関数f1(){戻りthis.a}

    そこOBJ1 = {:11111}。

    そこOBJ2 = {:22222}。

    F2 = f1.bind(OBJ1)でした

    F2()// 11111

    console.log(f2.call(OBJ2))// 11111

    console.log(f1.call(OBJ2))// 22222

4、少し知識を適用して呼び出します

  Array.prototype.slice.apply($(「DIV」))//オブジェクトは配列のような配列に変換することができます

  オブジェクトが配列のような配列に変換することができます。// Array.prototype.slice.call($(「DIV」))

おすすめ

転載: www.cnblogs.com/cuishuangshuang/p/12632487.html