js函数中匿名函数的this指针指向问题?javascript高手请进!!!
发布网友
发布时间:2022-04-07 05:53
我来回答
共2个回答
热心网友
时间:2022-04-07 07:22
匿名函数的this一般都是指向window的,这个不需要分析。
《javascript高级程序设计》这本书里的匿名函数这一章也有讲到,摘抄如下:
this对象是在运行时基于函数的执行环境绑定的:在全局函数中,this等于window,而当函数被作为某个对象的方法调用时,this等于那个对象。不过,匿名函数的执行环境具有全局性,因为其this对象通常指向window。
热心网友
时间:2022-04-07 08:40
嗯,怎么分析,它都应该是指向windows的。
除非是下面的这种函数,并不指向windows,而是事件对应的dom对象:
<div id="a">按</div>
<script>
document.getElementById('a').onclick = function(){alert(this.innerHTML)};
</script>
不过,这样的函数已经不是真正的匿名函数了,比如你可以通过:
document.getElementById('a').onclick();
语句,来调用这个函数;