日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

关于this的指向问题

發布時間:2025/7/14 编程问答 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于this的指向问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一個關于this指向而引發的血案。。。

在測試this指向的程序中,我寫錯了id對象,結果呢,居然也有效果,這真是超于我意料之外太多了,我以為自己寫錯了,結果一樣可以用。。。。。。。

<div id="bbb">show</div> <script>// window.onload = function(){// //// var s = document.getElementById('bbb');// s.onclick = showThis;//this == div#show // bbb.onclick = function(){// console.log(showThis);//返回的是定義showThis的內容// showThis();//this = window// } // // showThis();//this = window// }// function showThis(){// console.log(this);// }window.onload = function(){//直接使用id的方式調用方法,ie7,8,9,10,11,都支持,只不過ie7都返回object,其他都是[object Window],[object HTMLDivElement]bbbvar s = document.getElementById('bbb');s.onclick = showThis;//this == div#show bbb.onclick = function(){showThis();//this = windowalert(this+'bbb')} // showThis();//this = window}function showThis(){alert(this);} </script>

做一點總結:?window.onload = function(){

//直接使用id的方式調用方法,ie7,8,9,10,11,都支持,只不過ie7都返回object,其他都是[object Window],[object HTMLDivElement]bbbvar s = document.getElementById('bbb');console.log(s[onclick])// s.onclick = showThis;//this == div#shows.onclick = showThis;//實際上是把showThis的內容賦值給s.onclick,在未賦值前,s[onclick]為undifined
s.onclick = showThis();//實際上和showThis()一樣,也沒有返回值,這樣的方式其實在onclick為賦值前,showThis已經執行了;s.onclick = function(){//也是賦值,但是因為showThis是在外面定義的,所以showThis的this還是windowshowThis()}s.onclick = function(){//相當于s.onclick = showThis;也是賦值alert(this)}// s.onclick = showThis();// bbb.onclick = function(){// showThis();//this = window// alert(this+'bbb')// } // showThis();//this = window}function showThis(e){alert(this);}

  

轉載于:https://www.cnblogs.com/bestsamcn/p/5498048.html

總結

以上是生活随笔為你收集整理的关于this的指向问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。