繁花不似锦
1、call,apply和bind的区别它们在功能上是没有区别的,都是改变this的指向,它们的区别主要是在于方法的实现形式和参数传递上的不同。call和apply方法都是在调用之后立即执行的。而bind调用之后是返回原函数,需要再调用一次才行,2、①:函数.call(对象,arg1,arg2....)②:函数.apply(对象,[arg1,arg2,...])③:var ss=函数.bind(对象,arg1,arg2,....)3、总结一下call,apply,bind方法:a:第一个参数都是指定函数内部中this的指向(函数执行时所在的作用域),然后根据指定的作用域,调用该函数。b:都可以在函数调用时传递参数。call,bind方法需要直接传入,而apply方法需要以数组的形式传入。c:call,apply方法是在调用之后立即执行函数,而bind方法没有立即执行,需要将函数再执行一遍。有点闭包的味道。d:改变this对象的指向问题不仅有call,apply,bind方法,也可以使用that变量来固定this的指向。