首页 > 代码库 > javascript中的this指向问题
javascript中的this指向问题
This关键字:
1、this指向调用该函数的对象
通常情况下,定义一个变量、一个函数,都是作为window的属性、方法的
Var info=’hello’;
Function sayhi(){
This.style.color=’red’;
}
全局变量info 其实是window.info=’hello’;
调用sayhi() 其实是window对象在调用,即window.sayhi() 通常情况下省略window,直接调用。所以this.style.color中的this指向的是window。
2、通过new关键字实例化时,改变this指向,不在指向window。而是指向实例化的这个对象。
示例:
Function Student(){
This.name=”lydia”;
}
Var stu=new Student();
此时 this指向stu
3、匿名函数具有全局性,因此在匿名函数中this指向window对象
Var name=’outer’;
Var obj={
name:’inner’,
Say: function (){
Alert(this.name); //inner this指向调用它所在函数的那个对象 即obj
(Function (){
Console.log(this.name); //outer this指向window
}());
}
}
Obj.say();
javascript中的this指向问题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。