JavaScript中this指向

一般调用函数的时候,我们需要确认函数内部的this指向问题

一般指向函数的调用者

总结一下不同函数调用方式对应的this指向

1 普通函数调用 fun() -------window

2 构造函数调用 new Star() ------ 实例对象,原型对象里面的方法也指向实例对象

3 对象方法调用 ------ 该方法所属对象

4 事件绑定方法 ------- 绑定事件对象

5 定时器回调函数 ------ window

6 立即执行函数 -------- window

函数内部的this指向可以手动指定,主要有call(),apply(),bind()三种方法

1 call()

  语法: fun.call(that,arg1,arg2,...)

  功能:调用fun函数,改变fun函数的this指向

  主要应用: 可以用于构造函数的属性继承

  

function Father(uname.uage) {
    this.name = uname
    this.age = uage
}
function Son(uname,uage) {
    Father.call(this,uname,uage)
}
let son = Son(lldh,42)

 未完待续。。。。

猜你喜欢

转载自www.cnblogs.com/linhongjie/p/12154018.html