call和apply和bind区别

call和apply特征一样

都是用来调用函数 立即调用

但是可以在调用函数的同时 通过第一个参数指定函数内部this的指向

call 调用的时候 参数必须以参数列表的形式进行传递 也就是以逗号分隔的方式依次传递即可

apply 调用的时候 参数必须是一个数组 然后在执行的时候 会将数组内部的元素一个一个拿出来 与形参一一对应进行传递

如果第一个参数定义了null或者undefind 则内部的this指向window

bind

可以用来指定内部this的指向 然后生成了一个改变this指向的新函数

他和call和apply最大的区别就是bind不能调用

bind 支持传参 他的传参方式比较特殊 一共有两个位置可以传递

1 在bind的同时 以参数列表的形式进行传递

2 在调用的同时 以参数列表的形式进行传递

两者合并 bind的时候传递的参数和调用时候的参数合并到一起 传递到函数内部

上一篇:网络编程应用:基于TCP协议【实现一个聊天程序】


下一篇:Hibernate下的Many-to-Many的级联删除