总结一下this指向问题

总结一下this指向问题

1,一般函数的this指向window,谁调用指向谁 .对象内部的函数指向这个对象,事件函数指向这个事件源。。。

2,es6出的箭头函数的this指向所在区域的this,任何方法都改变不了(包括call,apply,bind.) ,直接改所在区域的this或者不,使用箭头函数

改变this问题

1,箭头函数可以把函数this指向由被调用的对象转成被调用对象的this

2,call 使用方法 (函数或对象).call(想要前面那个函数或对象指向谁就写谁,参数(这个参数为列表形式 如: 1,2,34,5,6,7,8,9,。。。。。)) 第一个参数可为null

​ apply 同上 不过第二个参数为一个数组 (函数或对象).apply(想要前面那个函数或对象指向谁就写谁,参数 这个参数为列表形式 如: [1,2,34,5,6,7,8,9,。。。。。]) 这玩意能做数组的展开使用 第一个参数可为null

​ bind 同第一个 不过这bind接收的是一个返回函数 需要执行才可以 例如 (函数或对象).call(想要前面那个函数或对象指向谁就写谁,参数(这个参数为列表形式 如: 1,2,34,5,6,7,8,9,。。。。。))

apply和 call无需使用 但是 bind需要再后面加上() 即可调用回调函数

new一个对象的过程

1,先写一个构造函数 函数内部的参数为 this.实参=实参 此函数默认返回 this过的实例项

2,当new一个函数时候 会创建一个新的内存空间实例 并将此new 函数的this指向新创建的实例

3,new出来的实例是一个新的内存空间 所以改变里面的数据 原构造函数的数据不会改变

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值