Javascript中修改this指向的方法有哪些?
通过new操作符调用构造函数,会经历以下4个阶段:
•创建一个新的对象;
•将构造函数的this指向这个新对象;
•指向构造函数的代码,为这个对象添加属性,方法等;
•返回新对象。
this的指向,是在函数被调用的时候确定的。如果调用者函数,被某一个对象所拥有,那么该函数在调用时,内部的this指向该对象。如果函数独立调用,那么该函数内部的this,则指向undefined。
动态指向this绑定方法:
1.通过call绑定this指向,第一个参数为指向对象,后续参数逐个传入参数。
2.通过apply绑定this指向,第一个参数为指向对象,第二个参数为参数数组。
3.通过bind绑定对象。
4.通过ES6中的箭头函数实现this保留。
5.通过中间变量保存this指针,防止指向错误。