js中的this

wuchangjian2021-11-01 21:18:54编程学习

在标准函数中,thise引用的是把函数当成方法调用的上下文对象,这时候通常称其为this值(在网页的全局上下文中调用函数时,this指向windows )。

定义在全局上下文中的函数sayColor()引用了this对象。函数被调用时才能确定。如果在全局上下文中调用sayColor(),这结果会输出"red",因为this指向window,而this . color相当于window .color 。而在把sayColor()赋值给o之后再调用o.sayColor(), this会指向o,即this.color相当于o.color,所以会显示"blue"。

<script type="text/javascript">
			window.color = 'red';
			let o = {
				color:'blue'
			};
			
			function sayColor() {
				console.log(this.color);
			}
			
			sayColor();
			
			o.sayColor = sayColor;
			o.sayColor();
</script>

![在这里插入图片描述](https://img-blog.csdnimg.cn/2051bd26624d4a70b54ee6c92177ade0.png)

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。