call()、apply()、bind()

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕码 2019-04-26 09:58:12

同学你好!

它们三个都是js中的方法,

作用:call()、apply()和bind()都是改变函数执行时的上下文(就是this的指向问题),可借助它们实现继承;

区别:(1)call()和apply()唯一区别是参数不一样,call()在第一个参数之后的  后续所有参数就是传入该函数的值。apply() 只有两个参数,第一个是对象,第二个是数组,这个数组就是该函数的参数。

例子:

http://img1.sycdn.imooc.com//climg/5cc2620f0001195607720497.jpg

(2)bind() 方法和前两者不同在于: bind() 方法会返回执行上下文被改变的函数而不会立即执行(意思是返回一个新函数,供以后调用),而前两者是直接执行该函数(立即调用)。它的参数和call()相同。

如果帮助到了你 欢迎采纳 祝学习愉快~

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
组件化思想开发电商网页 18版
  • 参与学习           人
  • 提交作业       467    份
  • 解答问题       4826    个

本路径带你通过系统学习HTML5、JavaScript、jQuery的进阶知识,不仅如此,还会学习如何利用组件化的思想来开发网页,知识点+案例,使得所学可以更好的得到实践。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师