大概前端面试很多跟this有关的东西了.看了一些别人的总结和例子,自己也总结一下梳理一下大家瞅一下.
什么是this
this是Javascript语言的一个关键字。
它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用
this指向
1.this总是指向函数的直接调用者,对象的普通调用(对象方法的调用,单纯函数调用,构造函数调用...)时,谁调用指向谁
2.如果有new关键字,指向new出来的对象,也就是新创建的对象
3.箭头函数:函数体内的this对象就是定义时的所在的对象,指向的时外部的作用域
4.全局函数调用:如果有'use strict'.在严格模式下(禁止this指向全局对象),this指向全局,没有的话this为undefined
5.call/apply/bind调用:call和apply指向这个方法的第一个参数,bind指向绑定的对象,强制绑定那种
反正概念看得人头大,但是看看概念看看例子再想想概念,好像能明白好多,那咱们看例子吧
栗子在这
差不多就这些了,有错的话赶紧戳我 !!!!!