this指向问题——严格、非严格模式,事件处理程序

this值取决于调用它的位置与方法
 
函数调用:ES3和非严格的ES5,this指向全局对象,ES5严格模式下为undefined
 
方法调用:this指向调用它的对象。
 
function IsStrict(){return !this;}//判断是否为严格模式
 
this值指向的特殊情况:
var name="Window";                                        obj.getName();        //myObj
var obj={                                                            (obj.getName)();     //myObj
            name:"myObj",
            getName:function(){                              (obj.getName=obj.getName)();    //Window
                console.log(this.name);
            }
        };
 
 
IE事件处理程序,this指向全局作用域
W3C事件处理程序和IE DOM0级方法,this指向绑定对象(currentTarget)
posted @ 2016-06-18 16:24  秋虹连宇  阅读(251)  评论(0编辑  收藏  举报