`

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

相关推荐

    深入浅出分析javaScript中this用法

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

    Javascript的this用法

    ### JavaScript中的`this`用法详解 在JavaScript中,`this`关键字的使用十分常见,但也是最容易引起混淆的部分之一。正确理解`this`的工作原理对于编写高效、可靠的代码至关重要。本文将深入探讨`this`在不同上下...

    javascript中onclick(this)用法介绍

    总结来说,在javascript中,onclick(this)的用法主要是将当前被点击的元素作为上下文对象传递给事件处理函数。在事件处理函数内部,我们可以访问到这个对象的所有属性和方法,从而实现对事件的处理和响应。通过这种...

    javascript中this用法实例详解

    本文将结合实例详细介绍JavaScript中`this`的用法,并分析在各种调用场景下的表现和技巧。 首先,`this`关键字在JavaScript中的含义不是固定的,它的指向是在函数执行时动态决定的,而不是在函数定义时确定。`this`...

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

    JavaScript中的`this`关键字是一个非常重要的概念,它用于在函数或对象中引用当前上下文的对象。在不同的场景下,`this`的值会有所变化...通过这些实例和解释,希望能帮助你更好地理解和掌握JavaScript中的`this`用法。

    javascript 中 this 的用法.docx

    ### JavaScript 中 `this` 的用法详解 #### 一、引言 在 JavaScript 开发过程中,`this` 关键字的使用常常令开发者感到困惑。这是因为 `this` 的值并不是静态确定的,而是取决于函数调用的方式。了解 `this` 的...

    JavaScript中this用法学习笔记

    在JavaScript中,`this`关键字是一个非常重要的概念,但也是新手开发者经常困惑的地方。`this`的值在运行时才会确定,并且根据函数调用的方式不同而有所不同。以下是关于`this`用法的详细说明: 一、常见的`this`...

    javascript 中关于 this 的用法.zip

    本篇将深入探讨JavaScript中的this用法,帮助你更好地掌握这个核心概念。 1. **函数调用方式与this绑定** - **默认绑定**:在全局环境中,this被绑定到全局对象,在浏览器中通常是window。例如: ```javascript ...

    JavaScript中this关键字使用方法详解

    在本文中,我们将深入探讨`this`在JavaScript中的工作原理,以及在不同场景下的用法。 1. **函数调用方式** 在函数调用中,`this`的值取决于函数被调用的方式。如果函数是作为对象的方法调用,`this`将指向调用该...

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

    在JavaScript中,`this`关键字是一个非常重要的概念,它指的是当前执行上下文中的对象。`this`的值取决于函数的调用方式,而不是定义方式。下面我们将详细探讨在不同场景下`this`的用法。 1. **全局作用域中调用...

    JavaScript程序设计javascript中this

    JavaScript中的`this`关键字是程序设计中的一个核心概念,它在不同上下文环境中有着不同的指向,这使得理解和掌握`this`的用法至关重要。在JavaScript中,`this`的值取决于函数调用的方式,而不是定义的方式,这为...

    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) 函数...

    this的用法以及改变this指向

    ### this的用法以及改变this指向 #### 为什么学习this? 在JavaScript中,`this`关键字的使用极为广泛。理解并掌握`this`的工作机制对于提高编程能力至关重要: 1. **阅读代码的能力**:不了解`this`的工作原理,...

    JavaScript中this的使用

    通过对不同场景下`this`的用法进行分析,我们可以更好地控制代码中的对象引用,从而编写出更清晰、更易于维护的程序。在实际开发中,应根据需求灵活运用`call`、`apply`和箭头函数来处理`this`的指向问题。

    javascript中this的用法实践分析

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

Global site tag (gtag.js) - Google Analytics