1.當有定時器時 this會指向window javascript
<script type="text/javascript"> function Aaa(){ var _this=this; //_this表示Aaa this.a=12; setInterval(function(){ // console.log(this) //this表示window _this.show(); },1000) } Aaa.prototype.show=function(){ console.log(this.a) } var obj=new Aaa(); // obj.show() </script>
2.當有事件時,this會指向事件對象html
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8" /> <title>Document</title> </head> <body> <script type="text/javascript"> function Bbb(){ // console.log(this) //this 這個表示 Bbb var _this=this; this.b=5; // document.getElementById("btn").onclick=this.show //這裏的this表示 input document.getElementById("btn").onclick=function(){ _this.show() } } Bbb.prototype.show=function(){ console.log(this.b) /*this 表示*/ } window.onload=function(){ new Bbb(); } </script> <input type="button" name="" id="btn" value="按鈕" /> </body> </html>