千锋教育JavaScript全套视频教程(10天学会Js,前端javascrip

通过学习,this是Javascript语言中的一个关键字,this所在function被哪个对象调用了,this就代表这个对象,如果没有明确的对象,则指向window;如果函数中启动严格模式,则当前函数中的this不再指向任何对象。
- this全局环境是指在script标签的内部,而全局环境下的作用域就是全局作用域。全局作用域下的this始终指向的是全局对象window。
- 对象中的this: 对象内部方法的this指向调用这些方法的对象,即由哪个对象调用就指向哪个对象,如果是多层嵌套的情况,内部方法的this指向离被调用函数最近的对象
经过总结有以下几点:
- 在方法中调用:this指向的是所处方法的对象,this指的就是方法对象。
- 在函数调用下:在没有对象调用该方法时this指向全局对象(window),若有对象调用则this指向该对象。
- 在单独使用时:this指向全局对象。
- 在闭包中使用:如果内部函数没有使用箭头函数定义,则 this 对象会在运行时绑定到执行函数的上下文。
- 在call、apply调用下:this指向的时它们的第一个参数
- 在严格模式下:函数是没有绑定到this上,这时候this是undefined,如果单独使用this指向全局对象,
- 在事件中:this指向接收事件的HTML元素