`

javascript中this的用法

阅读更多
this的用法分几种情况

1)如果调用this的function是对象的方法时(任何用作方法的函数都有效地传递了一个隐式的参数this,this指向调用函数的对象。

如:
 
   var a  = {
               arg1: 1,
               arg2: 2,
               m : function(){
                    return this.arg1 + this.arg2; // 此处this指向a对象
               }
          }


2)如果调用this的function只作为一个function存在时(一个函数作为函数儿不是方法调用的时候),this指向全局变量

    
function a(){
          this.arg1 = 2;  //此处this指向window
     }

    

值得注意的是,函数嵌套,this同样指向window:
  
function a(){
          this.arg1 = 2;  //此处this指向window
          function b(){
               console.log(this)// 此处this同样指向window
          }
     }


3)当一个函数嵌套在另外一个作为方法的函数里面是,前者的this(包括后者的this)都指向调用后者这个函数的对象

    
var b = {
          arg1: 1,
          arg2: 2,
          m : function(){
               function emb(){
                    alert(this.arg1);    //此处this指向b对象
               }     
          }
     }

分享到:
评论
1 楼 czpae86 2012-04-06  
这里说得太片面了,如果改变函数的作用域呢?请看下面例子:

var b = {number: 12};
var number = 18;
function print(a,b){
   alert(this.number+a+b);
}

print.call(window,1,2);//打印21,这时候print方法里面的this指向window
print.apply(b,[1,2]);//打印15,这时候print方法里面的this指向对象b

相关推荐

    5分钟理解JavaScript中this用法分享

    本文结合网络收集整理,尝试以一种简易的方式阐述JavaScript中this的用法,希望对大家关于JavaScript中this用法的快速理解有所帮助。正文1. this用法实例 代码如下:window.color = “red”; var o = { color: “blue...

    javascript中this用法实例详解

    本文实例讲述了javascript中this用法。分享给大家供大家参考,具体如下: JavaScript中的this含义非常丰富,它可以是全局对象,当前对象或者是任意对象,这都取决于函数的调用方式。函数有以下几种调用方式:作为...

    深入浅出分析javaScript中this用法

    本文实例讲述了javaScript中this用法。分享给大家供大家参考。具体分析如下: 之前学javascript的时候总搞不清this,这个this不像java里的this那么好理解。我后来也是看了许多别人写的文章,才理解过来的。现在把别人...

    Javascript的this用法

    Javascript的this用法

    JavaScript中this用法学习笔记

    在本篇文章里小编给大家分享了关于JavaScript中this用法学习笔记以及知识点总结,有兴趣的朋友们学习下。

    javascript 中 this 的用法.docx

    本文将介绍 JavaScript 中 this 的用法,从而帮助开发者更好地理解并掌握 this 的使用。 一、在全局作用域中使用 this 在全局作用域中使用 this 会返回全局对象,在浏览器环境下是 window 对象, 在 Node.js 环境...

    javascript中onclick(this)用法介绍

    this指触发事件的对象,接下来为大家分享下javascript中onclick(this)的用法,感兴趣的朋友可以参考下哈,希望对你有所帮助

    详解JavaScript中this关键字的用法_.docx

    详解JavaScript中this关键字的用法_.docx

    Javascript中this的用法详解

    应该是最常用的吧,函数中调用一个this,这里其实就是全局变量 var value="0"; function mei(){ var value="1"; console.log(this.value); //0 console.log(value); //1 } mei(); 输出0就是因为this指向的是全局...

    javascript中this的四种用法

    在《javaScript语言精粹》这本书中,把 this 出现的场景分为四类,简单的说就是: 有对象就指向调用对象 没调用对象就指向全局对象 用new构造就指向新对象 通过 apply 或 call 或 bind 来改变 this 的所指。 1) 函数...

    javascript中this的用法实践分析

    本文实例讲述了javascript中this的用法。分享给大家供大家参考,具体如下: 实践一:this在点击等事件中的指向 html结构: <button id='btn'>click me</button> javascript结构: var btn = document...

    JavaScript中this关键字用法实例分析

    主要介绍了JavaScript中this关键字用法,结合实例形式总结分析了javascript中this关键字在不同条件下的指向问题与相关操作技巧,需要的朋友可以参考下

    JavaScript中this的用法实例分析

    本文实例分析了JavaScript中this的用法。分享给大家供大家参考,具体如下: 一.”this”公理 this关键字永远都指向函数(方法)的所有者; function fn1(){ this }; fn1(); //this=>window oDiv.onclick=fn1; //this...

Global site tag (gtag.js) - Google Analytics