理解this
this是面相对象语言里的一个关键字,它不能赋值也不能脱离对象,每个函数在被调用时都会创建一个执行上下文,this就是执行上下文中的一个属性,他是在函数运行时进行绑定的,this的绑定和函数的声明位置没有关系,它取决于函数的调用方式。当在全局调用函数时this指向window,当是对象调用时,this指向对象。绑定事件时在元素(element)上绑定事件this指向全局,绑定点击事件和监听事件时this指向该元素。
该变this指向的方法
1.apply方法
语法:
函数.apply(指向谁,数组传参)
第一个参数是你要使this指向的元素
第二个是你要传的参数,他是用数组传参,把所有需要穿的蚕食写入一个数组中进行传值
该方法会立即执行原函数
2.call方法
语法:
函数.call(指向谁,依次传参)
该方法参数不限
第一个参数是你要使this指向的元素
之后的参数依次传入
该方法会立即执行原函数
3.bind方法
语法:
函数.bind(指向谁,依次传参)
该方法参数不限
第一个参数是你要使this指向的元素
之后的参数依次传入
该方法不会立即执行原函数,会返回一个新的函数