call和apply特征一样
都是用来调用函数 立即调用
但是可以在调用函数的同时 通过第一个参数指定函数内部this的指向
call 调用的时候 参数必须以参数列表的形式进行传递 也就是以逗号分隔的方式依次传递即可
apply 调用的时候 参数必须是一个数组 然后在执行的时候 会将数组内部的元素一个一个拿出来 与形参一一对应进行传递
如果第一个参数定义了null或者undefind 则内部的this指向window
bind
可以用来指定内部this的指向 然后生成了一个改变this指向的新函数
他和call和apply最大的区别就是bind不能调用
bind 支持传参 他的传参方式比较特殊 一共有两个位置可以传递
1 在bind的同时 以参数列表的形式进行传递
2 在调用的同时 以参数列表的形式进行传递
两者合并 bind的时候传递的参数和调用时候的参数合并到一起 传递到函数内部
相关文章
- 03-03self和super之间的区别
- 03-03JS in和Object.hasOwnProperty()的区别
- 03-03C++:memset ,memcpy 和strcpy 的根本区别!
- 03-03ASCII、Unicode、GBK和UTF-8字符编码的区别联系(转载)
- 03-03浅析TypeScript中const和readonly的区别、枚举和常量枚举的区别以及关于typescript中枚举的相关知识
- 03-03python基础小知识,is和==的区别,编码和解码
- 03-03临时表和视图的区别
- 03-03CA证书认证单向和双向的区别
- 03-03浅谈mmap()和ioremap()的用法与区别
- 03-03一起学Vuejs(三)----- export和export default的区别