//
但在 JavaScript 中 this 不是固定不变的,它会随着执行环境的改变
而改变。在方法中,this 表示该方法所属的对象。如果单独使用,this
表示全局对象。在函数中,this 表示全局对象。在函数中,在严格模式
下,this 是未定义的(undefined)。在事件中,this 表示接收事件的
元素。
1.普通函数调用,此时 this 指向 window
2.构造函数调用, 此时 this 指向 实例对象
3.对象方法调用, 此时 this 指向 该方法所属的对象
4.通过事件绑定的方法, 此时 this 指向 绑定事件的对象
4.通过事件绑定的方法, 此时 this 指向 绑定事件的对象
改变this指向
call()方法
格式 函数名.call();
参数:
第一个参数: 传入该函数this指向的对象,传入什么强制指向什么
第二个参数开始:将原函数的参数往后顺延一位。
apply()
格式 函数名.apply();
参数:
第一个参数: 传入该函数this指向的对象,传入什么强制指向什么
第二个参数: 数组 。数组里面放入我们原有的参数
bind() 预设this指向
var bb = show.bind('bb'); 先通过bind的预设下thie指向,然后返回一个新函数,此时这个新函数this已经指向bb了
a(10,20);
this指向
于 2022-03-27 20:00:23 首次发布