
- DOMElement.addEventListener('click', function(){
- console.log(this);
- });
把函数绑定到DOM事宜时,可以算作在DOM上增长一个函数办法,当触发这个事宜时调用DOM上对应的事宜办法。
- DOMElement.clickHandle = function(){
- console.log(this);
- }
- DOMElement.clickHandle();

通俗函数中的this
下面我们把其他函数的调用方法都按调用对象办法的思路来转换。
这种情况下,我们创建一个虚拟高低文对象,然后通俗函数作为这个虚拟高低文对象的办法调用,此时通俗函数中的this就指向了这个虚拟高低文。
那这个虚拟高低文是什么呢?在非严格模式下是全局高低文,浏览器里是 window ,NodeJs里是 Global ;在严格模式下是 undefined 。
- var x = 1;
- function getX(){
- console.log(this.x);
- }
- [viturl context].getX = getX;
- [viturl context].getX();

闭包中的this
this 地点的函数 foo 是个通俗函数,我们创建一个虚拟高低文对象,然后通俗函数作为这个虚拟高低文对象的办法急速调用。是以这个 this指向了这个虚拟高低文。在非严格模式下是全局高低文,浏览器里是 window ,NodeJs里是 Global ;在严格模式下是 undefined 。
- var x = 1;
- var foo = {
- x: 2,
- y: 3,
- getXY: function(){
- (function(){
- console.log("x:" + this.x);
- console.log("y:" + this.y);
- })();
- }
- }
- foo.getXY();
这段代码的高低文如下图:

这里须要留意的是,我们再研究函数中的 this 指向时,只须要存眷 this 地点的函数是若何调用的, this 地点函数外的函数调用都是浮云,是不须要存眷的。是以在所有的图示中,我们只须要存眷红色框中的内容。
推荐阅读
改革大年夜潮,风生水起;蹄疾步稳,行精细远。2014年12月,贵州省作为全国首批司法体系体例改革试点省份之一,率先拉开司改大年夜幕。三年多来,贵州省审查院紧紧抓住完美司法义务制这个&>>>详细阅读
地址:http://www.17bianji.com/lsqh/36427.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示