1. 程式人生 > >[js]this關鍵字代表當前執行的主體

[js]this關鍵字代表當前執行的主體

this ont ext get code text logs () -m

點前是誰,this就是誰

<div id="div1" class="div1"></div>
<div id="div2" class="div2"></div>
<script>
/*
this代表當前執行函數的主體.js中context代表當前執行函數的環境

- 1,和在哪定義的沒關系
- 2,和執行環境沒關系
- 3,僅和誰在執行(執行主體)有關系

*/

    // 1. 如果函數前沒. 則,this是window
    function fn() {
        console.log(this);
    }
    obj = {fn: fn};
    fn();    // this->window
    obj.fn(); // this->obj

    // 2.自執行函數(前面不可能有點)裏的this永遠是window

    // 3.給元素綁定方法,點擊時候觸發事件,事件中的this代表當前元素
    document.getElementById("div1").onclick=fn;
    document.getElementById("div2").onclick=function () { fn() };
</script>

[js]this關鍵字代表當前執行的主體