js中this的用法
来源:互联网 发布:打字员软件 编辑:程序博客网 时间:2024/05/16 14:23
this是js的一个关键字,随着函数使用场合不同,this的值会发生变化。但是总有一个原则,那就是this指的是调用函数的那个对象。
1、纯粹函数调用。
function test() {
this.x = 1;
alert(x);
}
test();
this.x = 1;
alert(x);
}
test();
其实这里的this就是全局变量。看下面的例子就能很好的理解其实this就是全局对象Global。
var x = 1;
function test() {
alert(this.x);
}
test();//1
var x = 1;
function test() {
this.x = 0;
}
test();
alert(x);//0
function test() {
alert(this.x);
}
test();//1
var x = 1;
function test() {
this.x = 0;
}
test();
alert(x);//0
2、作为方法调用,那么this就是指这个上级对象。
function test() {
alert(this.x);
}
var o = {};
o.x = 1;
o.m = test;
o.m(); //1
alert(this.x);
}
var o = {};
o.x = 1;
o.m = test;
o.m(); //1
3、作为构造函数调用。所谓构造函数,就是生成一个新的对象。这时,这个this就是指这个对象。
function test() {
this.x = 1;
}
var o = new test();
alert(o.x);//1
this.x = 1;
}
var o = new test();
alert(o.x);//1
4、apply调用
this指向的是apply中的第一个参数。
var x = 0;
function test() {
alert(this.x);
}
var o = {};
o.x = 1;
o.m = test;
o.m.apply(); //0
o.m.apply(o);//1
function test() {
alert(this.x);
}
var o = {};
o.x = 1;
o.m = test;
o.m.apply(); //0
o.m.apply(o);//1
当apply没有参数时,表示为全局对象。所以值为0。
- js 中 this 的用法
- js中this的用法
- js中this的用法
- js中this的用法
- js中this的用法
- JS中this的用法
- js中this的用法
- js中this的用法
- js中this的用法
- js中this的用法
- JS中THIS的用法
- js中this的用法
- js中this的用法
- js中this的用法
- js中this的用法
- js中this的用法
- js中this的用法
- js中this的用法
- JQuery教程自学笔记(一) -- JQuery 技术
- 如何在MFC中加入工具栏和停靠窗口
- C++ STL简介
- 25个增强iOS应用程序性能的提示和技巧-初级
- 如何从Windows7系统找回Windows.old文件夹【xitongshoucang】
- js中this的用法
- poj 3468 A Simple Problem with Integers
- 软件设计之UML—UML中的六大关系
- NSString
- 贪心 CF 333B Chips
- 最小值堆-Java实现
- Ubuntu下配置JDK
- android接触--新版本编译OK,系统却起不来
- 长按手势获取UITableView的indexPath值,删除某行