前端入门知识点笔记本之js重定位函数
1.
call()、bind()、apply()的用法,改变this的指向,区别在于
f.call(obj, arg1, arg2...),
f.bind(obj, arg1, arg2,...)(),
f.apply(obj, [arg1, arg2, .])
Example:封装函数 f,使 f 的 this 指向指定的对象
(1)apply()
function bindThis(f, oTarget) { return function() { return f.apply(oTarget, arguments) } }
(2)bind()
function bindThis(f, oTarget) { return f.bind(oTarget) }
(3)call()
function bindThis(f, oTarget) { return function() { return f.call(oTarget, ...arguments) } }