js中this的运用

  • this 永远指向函数运行时所在的对象,而不是函数创建时所在的对象
  • 匿名函数和不处于任何对象中的函数,This指向window
  • call, apply, with指的This是谁就是谁。
  • 普通函数调用,函数被谁调用,This就指向谁
var x=0;
var foo={
    x:1,
    bar:{
        x:2,
        baz:function(){
           console.log(this.x)
        }
    }
}
 
var a=foo.bar.baz
foo.bar.baz();//2
a();//0

a运行时所在的对象时window,所以this指向window,即全局变量x为0;

 

posted @ 2017-05-08 14:34  风雨飘飘飘啊飘  阅读(78)  评论(0编辑  收藏  举报