Js this关键字

1.this在最外围表示的是window,他们都是一个对象,是Js里最大的对象,最外围的对象

alert(this);            //[object Window]
alert(window)            //[object Window]
alert(typeof window)      //object
alert(typeof this)      //object,这个时候的window就是this

2.全局变量也是window下的属性

var color='红色';            //这里的color是全局变量,也是window的属性,类似与this.color,window.color

3.this局部变量

var box={
    color:'红色',                //对象内的变量为局部变量,也是box下的属性
    sayColor:function(){
        return this.color;        //这里的this,代表的为box对象
    }
}
var color='蓝色'                    //全局变量
alert(this.color);               //蓝色,这里代表的是window,它没有在对象或者方法内
alert(box.sayColor())            //红色,打印局部的color
原文地址:https://www.cnblogs.com/xiaoxinzi/p/8513676.html