JavaScript:this是什么?
定义:this是包含它的函数作为方法被调用时所属的对象。
说明:这句话有点咬嘴,但一个多余的字也没有,定义非常准确,我们可以分3部分来理解它!
1、包含它的函数。2、作为方法被调用时。3、所属的对象。
看例子:
function to_green(){
this.style.color="green";
}
to_green();
上面函数中的this指的是谁?
分析:包含this的函数是,to_green
该函数作为方法被调用了
该函数所属的对象是。。?我们知道默认情况下,都是window对象。
OK,this就是指的window对象了,to_green中执行语句也就变为,window.style.color="green"
这让window很上火,因为它并没有style这么个属性,所以该语句也就没什么作用。
我们在改一下。
window.load=function(){
var example=document.getElementById("example");
example.onclick=to_green;
}
这时this又是什么呢?
我们知道通过赋值操作,example对象的onclick得到to_green的方法,那么包含this的函数就是onclick喽,
那么this就是example引用的html对象喽。
this的环境可以随着函数被赋值给不同的对象而改变!
下面是完整的例子:
点击变绿
javascript在web开发中的无处不在,未来的web程序必然拥有大量的js代码支持。javascript这门语言有点残废,“混乱”的this应用让人头痛,我常常搞错。整理一些js中this的使用方法。关键字this总是指向调用该方法的对象.
1.表示对触发事件的DOM对象的引用
this指针是面向对象程序设计中的一项重要概念,它表示当前运行的对象。在实现对象的方法时,可以使用this指针来获得该对象自身的引用。
和传统意义的面向对象的语言不同,JavaScript 中的 this 指针是一个动态的变量,一个方法内的this指针并不是始终指向定义该方法的对象的.
推荐一本书给你,这本书里对this指针有很详细的解说。
《JS资料-征服Ajax - Web20开发技术详解试读版.pdf》
this是一个语言中的关键字,它就是一个对象。
thispage的意思是这个页面。
JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。
this代表当前对象 比如你点击Button,this就代表了Button这个按钮.
Button有很多属性如 Button.caption 也可以写成this.caption