0
点赞
收藏
分享

微信扫一扫

call()、apply()、bind()用法跟区别

天蓝Sea 2022-04-15 阅读 86
javascript

目录

call()

apply()

bind()


名词解释来源MDN

  • call()

首先需要搞明白,this的概念

在控制台中打印this

 此时我们知道,this指向window:this==window,this可以使用window的所有方法

解释:定义了一个对象a,定义了一个Person方法,使用Person.call(a,"boy",20)调用Person()方法,并且赋值,由此可见,a就是要改变this指向的那个对象,后面两个是所传的参数。此时我们可以对比下this打印的值来做出判断

 未使用call()之前的

 使用call()之后

 此时的this==a

  • apply()

 call()方法的作用和 apply() 方法类似,区别就是call()方法接受的是参数列表,而apply()方法接受的是一个参数数组

  • bind()

 

举报

相关推荐

0 条评论