call/apply/bind的相同和不同点

共同点:三个都可以改变this的指向。

不同点:call和apply会调用函数,并且调用函数内部的this指向;bind不会调用函数就可以改变函数内部this指向。call传递参数使用逗号隔开,apply传递参数使用数组。

应用场景:

call经常在做继承时使用。

apply经常和数组有关系比如借助数学对象实现数组最大值和最小值

bind应用于不调用函数但是还想改变this指向,比如改变定时器内部的this指向

你可能感兴趣的:(前端,javascript)