zoukankan      html  css  js  c++  java
  • this对象指向

    this表示函数运行时,自动生成的一个内部对象,只能在函数内部运行

    function test(){
         this.x = 1;
    }

    随着使用场景的变化,this的值会发生变化

    原则:this指的值调用函数的那个对象

    this指向对象说明如下:

    1.纯粹的函数调用

    function fun(){
      this.a = 'I am whisky';
      alert(this.a)        
    }
    fun();  // I am whisky

    2.函数作为某个对象的方法进行调用,这是this就指向这个上级的对象。

    function fun(){
       alert(this.a);          
    }
    var o = {};
    o.a = 1;
    o.b = fun;
    
    o.b() // 1

    3.作为构造函数进行调用

    function fun(){
       this.x = 'one';
    }
    var test = new fun();
    alert(test.x);  // one

    注意事项:此时的this不是指向全局对象。如下我举例说明:

    var x = 2;
       function test(){
       this.x = 1;
    }
    var o = new test();
    alert(x); // 2

    4.apply调用apply方法中第一个参数就是this指向的对象

    var a = 2;
    function fun(){
       alert(this.a);      
    }
    var o = {};
    o.a = 1;
    o.b = fun;
    o.b.apply(o);

    谢谢大家关注!!!

     

  • 相关阅读:
    yum提示Another app is currently holding the yum lock
    函数参数返回值作用域笔记
    递归内置函数笔记
    装饰器笔记
    函数笔记扩展
    集合笔记
    线程和进程
    函数笔记
    线程与进程的区别
    Ubuntu操作及各种命令笔记.txt
  • 原文地址:https://www.cnblogs.com/maqingyuan/p/8822036.html
Copyright © 2011-2022 走看看