javascript中的this到底指什么?

来源:百度知道 编辑:UC知道 时间:2024/05/30 13:29:25
请高手详细解释一下。

this指针是面向对象程序设计中的一项重要概念,它表示当前运行的对象。在实现对象的方法时,可以使用this指针来获得该对象自身的引用。
和传统意义的面向对象的语言不同,JavaScript 中的 this 指针是一个动态的变量,一个方法内的this指针并不是始终指向定义该方法的对象的.
推荐一本书给你,这本书里对this指针有很详细的解说。
《JS资料-征服Ajax - Web20开发技术详解试读版.pdf》

this代表当前对象 比如你点击Button,this就代表了Button这个按钮.
Button有很多属性如 Button.caption 也可以写成this.caption

javascript在web开发中的无处不在,未来的web程序必然拥有大量的js代码支持。javascript这门语言有点残废,“混乱”的this应用让人头痛,我常常搞错。整理一些js中this的使用方法。关键字this总是指向调用该方法的对象.
1.表示对触发事件的DOM对象的引用
<div onclick="可以在里面使用this">division element</div>
onclick="function(this){}";onclick="function(){this..}"
脚本引擎生成了一个div实例对象的匿名成员方法,而onclick指向这个方法
2.在函数内使用this,表示引用当前window对象
<script language="javascript">
function a(){this..}
</script>
对于IE浏览器可以用this.event.srcElement来获取对当前DOM对象的引用,FF不行。这种方法如果在使用函数的时候new了一下,那么this将会表示函数a,而不是window对象.var b=new a(); var b=a();两者会产生不一样的结果,很神奇的this
3、用DHTML方式在事件处理函数中使用this关键字: