改变this指向的几种方法

本文介绍了JavaScript中改变函数this指向的三种方法:call()、bind()和apply()。call方法允许指定函数执行时的上下文对象,即this值。bind方法不仅改变this,还可以预设函数参数,但不会立即执行。apply方法与call类似,区别在于传递参数的方式是数组。这三种方法在处理回调函数和对象方法时非常有用。
摘要由CSDN通过智能技术生成

在js中改变this指向的方法有三种call()、bind()、apply() 三种方法

1.call 方法

这是一个普通函数此时的this指向是window

 下面是用了call方法后,可以看到this指向现在是指向n的,那么我们就可以知道call怎么用了

改变指向的方法.call(选择指向的元素,'多个参数以逗号分隔','多个参数以逗号分隔')

 2.bind方法

下面是bind方法发现这个写法和call有点不一样

改变指向的方法.bind(选择指向的元素,'多个参数以逗号分隔','多个参数以逗号分隔'),注意bind方法改变this指向时不会调用该函数,因此在想改变this指向又不想调用函数时推荐此方法

  3.apply方法

下面是apply方法这个和call又有不一样

改变指向的apply(选择指向的元素,[多个参数,多个参数]),注意apply方法接收的参数是数组

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值