Сообщество IT-специалистов
Ответы на любые вопросы об IT
Профессиональное развитие в IT
Удаленная работа для IT-специалистов
const bind = (fn, ctx) => (...args) => fn.call(ctx, ...args); function a(a,b,c){ console.log(this, a, b, c) } const someObj = {abc: 100} const bindedA = bind(a, someObj); bindedA(123, 456, 789); // -> { abc: 100 } 123 456 789
Object.defineProperty(Function.prototype, 'bind2', { value(...args) { return (...args2) => this.call(...args, ...args2); } });