面向對象3-this的用法

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>
相關文章
相關標籤/搜索