js中this的用法(经典值得借鉴)
2014-04-18 14:01
525 查看
this是js的一个关键字,随着函数使用场合不同,this的值会发生变化。但是总有一个原则,那就是this指的是调用函数的那个对象。
1、纯粹函数调用。
其实这里的this就是全局变量。看下面的例子就能很好的理解其实this就是全局对象Global。
2、作为方法调用,那么this就是指这个上级对象。
3、作为构造函数调用。所谓构造函数,就是生成一个新的对象。这时,这个this就是指这个对象。
4、apply调用
this指向的是apply中的第一个参数。
当apply没有参数时,表示为全局对象。所以值为0。
1、纯粹函数调用。
function 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
2、作为方法调用,那么this就是指这个上级对象。
function test() { 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
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
当apply没有参数时,表示为全局对象。所以值为0。
相关文章推荐
- 一道经典JS题(关于this)
- 熟练掌握js中this的用法,解析this在不同应用场景的作用
- js的this用法
- js数组方法reduce经典用法代码分享
- js中this的用法小结
- JS正则表达式基本用法(经典全)
- js中with、this的用法
- 第22篇 js中的this指针的用法
- js 中的this用法
- 详解JS中的this、apply、call、bind(经典面试题)
- js常见的var that = this的用法
- Js中call apply函数以及this用法
- JS中闭包的经典用法小结(2则示例)
- jquery中this与$(this)的用法区别.和于js中的this区别
- Java面试经典问题(1):Java中this和super的用法总结
- 嗯,关于JS函数内部变量的赋值和调用以及this的用法
- js中this的用法
- js中this的用法
- js中this的用法
- 一个浙江人的22条经典经商法则(很值得借鉴)