JavaScript中this指针学习整理
1.以普通函数调用时
非严格模式下 this指向window
严格模式下 undefined
2.以方法形式调用时,this就是调用方法的对象
3.以构造函数的形式调用时,this是新创建的对象
4.call()、apply()调用 改变this指向
语法:
func.call([thisArg[, arg1, arg2, …argN]])
func.apply(thisArg, [argsArray])
call()、apply()方法可以从一个对象使用另一个对象方法,不必重写
5.箭头函数调用
因为 => 函数没有自己this,而是上下文中的this,也可以理解为上一级中的this
5.bind()方法绑定this
语法:let boundFunc = func.bind(thisArg[,arg1[,arg2[,…argN]]])