JS /この時点

1、この概要

これは、一つの内部オブジェクトが自動的に生成され、関数が実行を表すキーJavaScript言語、ある機能のみ内部で使用することができ、別の機会の利用に応じて、この値が変更され、不確実であるとポイントそれは、動的にこの点を変更することができますが、常にこの関数が呼び出され、そのオブジェクトを指していることを一般的な原則があります。(この時点で、所有者は、一般的関数です)

図2に示すように、この厳密なモードの「使用厳密」値が定義されていません

  機能テスト(){

    「厳格な使用」; //厳格なモード

    console.log(この)//未定義

  }

  テスト()

3、配列

  関数f1(){

    (この)はconsole.log  

  }

  ARR =た[f1,2,3]。

  ARR [0]()//この点ARR

  ここで、f 2 = ARR [0]。

  F2(); //この時点窓

4、組み込み関数のsetTimeout(これはタイマウィンドウを指します)

  関数f1(){

    (この)はconsole.log  

  }

  setTimeout(f1,1000)//この時点窓

図5に示すように、コールバック関数は、また、このウィンドウを対象とします

図6に示すように、物体

  VAR OBJ = {};

  obj.name = 123。

  obj.action =関数(){にconsole.log(本)}

  関数f1(){にconsole.log(本)}

  obj.action()//この指向OBJ

  obj.f2 = F1;

  obj.f2()//この時点OBJ

7、このコンストラクタ

 

  コンストラクタ関数はインスタンスによって生成され、関数は(新しいキーワードで)コンストラクタとして使用されている場合は、新しいキーワードを使用しない場合、それは、新しく作成されたオブジェクトのはこの点だ、それは正常な機能です、この時点窓

図8に示すように、このウィンドウ関数の実装が行われるので

 

  VAR数= 1。

 

  VAR OBJ = {

 

    2番、

 

    アクション:関数(){

 

      this.number = 5;

 

      (関数( ){

 

        console.log(this.number)// 1

 

      })()

 

      console.log(this.number)// 5

 

    }

 

  }

 

  obj.action()

概要:呼び出し元の関数にこの点を、呼び出し側の尖った窓なし

 

おすすめ

転載: www.cnblogs.com/cuishuangshuang/p/12632595.html
おすすめ