解析器在调用函数每次都会想函数内部传递一个隐含的参数,这个隐含的参数就是this.this指向的是一个对象,这个对象我们称为函数执行的上下文的对象,根据函数的调用方式的不同 this会指向不同的对象 1.以函数额形式调用时,this永远指向window (其实也是window的方法) 2..以方法的形式调用时,this就是调用方法的那个对象
var name = "邓紫棋"
function fun() {
console.log(this) // window
console.log(this.name) // 邓紫棋
}
fun()
// obj.sayname() 以方法的形式调用,this是调用方法的对象
var obj = {
name: "oiu",
sayname: fun
}
obj.sayname()