this
①this是函数或方法被调用是动态生成的
跟Java那些静态语言不同,只有当函数被调用时才会产生this,所以,对象是没有this的(因为对象是静态的)。
②调用函数或方法,谁就是这个this
执行obj.f1()时,f1()这个方法会动态生成this,此时的this就是obj,因为是obj调用的。
eg1
new 这个关键字 就是用test()这个函数构造一个对象,这个对象是o ,被创造出来的与test()没有直接关系。
O= { x:1 }
eg2
这个test()是在全局调用。
记住“作为方法被调用时 谁调用它谁就是this”
如果是函数,就是window全局对象,window对象才是浏览器的全局对象(global对象是node.js里面的全局对象)。