关注
5、.apply,call,bind 的区别
相同点:作用相同,都是动态修改this指向;都不会修改原先函数的this指向。
异同点:
(1)执行方式不同:
call和apply是改变后页面加载之后就立即执行,是同步代码。
bind是异步代码,改变后不会立即执行;而是返回一个新的函数。
(2)传参方式不同:
call和bind传参是一个一个逐一传入,不能使用剩余参数的方式传参。
apply可以使用数组的方式传入的,只要是数组方式就可以使用剩余参数的方式传入。
(3)修改this的性质不同:
call、apply只是临时的修改一次,也就是call和apply方法的那一次;当再次调用原函数的时候,它的指向还是原来的指向。
bind是永久修改函数this指向,但是它修改的不是原来的函数;而是返回一个修改过后新的函数,此函数的this永远被改变了,绑定了就修改不了。
查看原帖
1 评论
相关推荐
点赞 评论 收藏
转发
查看18道真题和解析
点赞 评论 收藏
转发
牛客热帖
正在热议
# 和牛牛一起刷题打卡 #
4327次浏览 414人参与
# 机械制造薪资爆料 #
340572次浏览 4042人参与
# 牛客帮帮团来啦!有问必答 #
980140次浏览 15198人参与
# 通信硬件薪资爆料 #
241694次浏览 2279人参与
# 腾讯工作体验 #
146193次浏览 1405人参与
# 如何写一份好简历 #
300390次浏览 4321人参与
# 你的简历改到第几版了 #
323003次浏览 4851人参与
# 晒一晒我的offer #
3648623次浏览 56904人参与
# 2022毕业生求职现身说法 #
20309次浏览 310人参与
# 产品人专业大盘点 #
15055次浏览 120人参与
# 毕业租房也有小确幸 #
31635次浏览 1776人参与
# 浅聊一下我实习的辛苦费 #
93152次浏览 915人参与
# 视觉/交互/设计岗位评价 #
3353次浏览 59人参与
# 实习必须要去大厂吗? #
17950次浏览 263人参与
# 为什么国企只招应届生 #
55935次浏览 407人参与
# 你觉得机械有必要实习吗 #
10047次浏览 130人参与
# 在国企工作的人,躺平了吗? #
105313次浏览 1335人参与
# 为什么那么多公司毁约 #
54625次浏览 482人参与
# 许愿池 #
86869次浏览 1630人参与
# 找工作时遇到的神仙HR #
195485次浏览 1835人参与