封裝函數 f,使 f 的 this 指向指定的對象

如題:封裝函數 f,使 f 的 this 指向指定的對象bash

function bindThis(f, oTarget) {
    if (f.bind) {
        return f.bind(oTarget);
    } else {
        return function(){
            return f.apply(oTarget,arguments);
        };
    }
}
複製代碼

考慮兼容性對bind進行了判斷,apply之因此要放在一個函數裏面是由於bind返回的是一個函數,而apply方法是當即執行函數,因此須要放在一個函數裏面,到調用的時候再當即執行。app

相關文章
相關標籤/搜索