JavaScript函数的this属性

1、函数内部另一个特殊对象是 this,其行为与 Java 和 C#中的 this 大致相似。

2、换句话说,this 引用的是函数据以执行操作的对象,或者说函数调用语句所处的那个作用域。

3、当在全局作用域中调用函数时,this 对象引用的就是 window(是一个对象,而且是js里面最大的对象,是最外围的对象)。

alert(window);//结果[object Window]   是object类型
    
alert(this);//结果[object Window]   是object类型    因为在window范围下   所以this就是window
  window.color = ‘红色的‘;         //全局的,或者 var color = ‘红色的‘;也行
   alert(this.color);                 //打印全局的 color
    
    var box = {
        color : ‘蓝色的‘,                 //局部的 color
        sayColor : function () {
            alert(this.color);             //此时的 this 只能 box 里的 color
      }
    };
    box.sayColor();
    
    alert(this.color);        //还是全局的
  window.color = ‘红色的‘;         //全局的,或者 var color = ‘红色的‘;也行
    
    function sayColor(){
        alert(this.color);             
    }
    sayColor();         //这里调用sayColor,其实还是在window范围下的
    
    var box={
        color:‘蓝色‘
    }
    box.sayColor = sayColor;
    box.sayColor();//蓝色

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。