js中的this使用方法
this是js的一个关键字,随着函数使用场合不同,this的值会发生变化。但是总有一个原则,那就是this指的是调用函数的那个对象。
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。
以上转自:http://www.cnblogs.com/RitaRichard/archive/2011/10/14/2212161.html
在学习js闭包的时候看到一个思考题。
var name = "The Window"; var object = { name : "My Object", getNameFunc : function(){ return function(){ return this.name; }; } }; alert(object.getNameFunc()()); //The Window //刚开始不太明白,但是将最后一句改为如下代码就很好明白了。 var re_fun = object.getNameFunc(); alert(re_fun());
其中re_fun是返回的一个函数对象,但该对象是全局对象,所以在调用该方法时,里面的this代表的应该是全局变量的name。其实和下面的代码是一个效果:
var x = 1; function test() { alert(this.x); } test();//1
相关推荐
NULL 博文链接:https://wv1124.iteye.com/blog/505231
js原生态函数中使用jQuery中的 $(this)无效的解决方法.docx
在全局作用域中使用 this 会返回全局对象,在浏览器环境下是 window 对象, 在 Node.js 环境下是 global 对象。例如: console.log(this === window); true function test() { console.log(this === window); } ...
这篇文章主要介绍了JavaScript this使用方法图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 本文我们介绍下js中this的用法。 由上图可得,默认this指向...
深度解析 和this
JavaScript中this的使用,简单理解,快速学会
JavaScript中this的指向还没搞明白?来这看看 你就懂啦~
高手详解javascript中的this指针
详解Javascript 中的this指针
Javascript 中 this指向
this指触发事件的对象,接下来为大家分享下javascript中onclick(this)的用法,感兴趣的朋友可以参考下哈,希望对你有所帮助
JavaScript数组some()方法测试数组中的某个元素是否通过由提供的功能来实现测试。 语法 array.some(callback[, thisObject]); 下面是参数的详细信息: callback : 函数用来测试每个元素。 thisObject : 对象作为...
JavaScript程序设计javascript中this的指向问题共6页.pdf.zip
在 JavaScript 中,函数也是对象,因此函数可以作为一个对象的属性,此时该函数被称为该对象的方法,在使用这种调用方式时,this 被自然绑定到该对象。 代码如下: var point = { x : 0, y : 0,
本文实例讲述了js中this用法。分享给大家供大家参考。具体如下: 1. 指向window 全局变量 alert(this) //返回 [object Window] 全局函数 function sayHello(){ alert(this); } sayHello(); 2. ...
JavaScript中this指向.pdf
JavaScript中this指向.docx
复习JavaScript中this指向及绑定