javascript-this
2016-08-18 15:39
204 查看
this指的是谁?
this 指的是当前调用该方法对象,其实就是调用链上的最近的一个对象。所以this指的一定是对象,如果没有实例化对象,那就是window.
function fa(){
alert(this.constructor);
}
调用方式:fa();
fa定义了一 个函数(对象),但没有实例化这个对象,此时fa的域为window,也是第一个调用fa的对象。
[b]调用方式:var b=new fa();[/b]
此时new了一个对象,所以this的构造函数为fa()
var c=2;
var a={
c:0,
b:function(){
alert(this.c);
}
};
调用方式: a.b();
此时对象为a(json对象);
对象调用和函数调用有什么区别
function fa(){this.b=100;
}
fa();
alert(b);
分析:调用fa 时this为window.在fa方法中,this.b=100,相当于window.b=100,此时的b已经不是局部变量,已变成成员变量,对window对象有影响。
function fa(){
this.b=100;
}
new fa();
alert(b);
分析:new fa() 时this为new 出来的对象,.在fa方法中,this.b=100对window对象没有影响。
var _this=this;有什么用?
作用:保存对当前对象的引用var A=function(){
var _this=this;
_this.fa=function(){ //此处和this.fa=function()是一样的
alert("success");
}
_this.fb=function(){ //此处和this.fb=function()是一样的
$.ajax({
type : "post",
url : "",
success : function(msg) {
//此方法处在$对象中,this的值已改变。this指的是$对象。
//此处要访问fa方法不能用this只能用_this;此处的this指的是$,即jQuery对象,不是A的对象
_this.fa();
}
})
}
}
var a=new A();
a.fb(); // alert success
相关文章推荐
- JavaScript基础 text文本框获得焦点时,其中的内容被全选 this.select()
- 详细讲解JavaScript中的this绑定
- javascript this详解
- this 在javascript的中的使用,可以全部解决,你看学不学习下
- JavaScript中的this关键字介绍
- javascript中改变this的指向
- javascript中改变this的指向
- javascript必知必会之this关键字及scope(转)
- PPK 谈 JavaScript 的 this 关键字 [翻译]
- JavaScript面向对象(一)——JS OOP基础与JS 中This指向详解
- javascript语言精粹学习笔记之函数的四种this调用模式
- JavaScript中this指针指向的彻底理解
- 深入理解javascript原型和闭包(10)——this
- javascript 中的 this 与 事件注册 及event [转]
- javascript中this的使用
- JavaScript中的this
- JQuery_JavaScript___this的工作原理及常见错误
- javascript中的几个内置函数arguments, callee, caller, this, apply(), call()
- JavaScript的self和this使用小结
- 简单谈谈JavaScript中的this