1. 程式人生 > >談談對this 物件的理解

談談對this 物件的理解

可以先回答this在不同的場合指向的是什麼,在來回答什麼時候用到this

this的指向

this表示當前物件,this的指向是根據呼叫的上下文來決定的,預設指向window物件,指向window物件時可以省略不寫,

例如:

 this.alert() <=> window.alert()<=> alert(); 

1、呼叫的上下文環境包括全域性區域性

        全域性環境就是在<script></script>裡面,這裡的this始終指向的是window物件,

        <script>

             console.log(<strong>this</strong>);//指向window物件

       </script>

       區域性環境

          1)在全域性作用域下直接呼叫函式,this指向window

function func(){

              console.log(this) ;//this指向的還是window物件

            }

           func()

           2)物件函式呼叫,哪個物件呼叫就指向哪個物件

             

          3)使用 new 例項化物件,在建構函式中的this指向例項化物件。

             

          4)使用call或apply改變this的指向

            

加分項

         1. 用於區分全域性變數和區域性變數,需要使用this

          

         2.返回函式當前的物件,

         

        3.將當前的物件傳遞到下一個函式