bind своими руками
Я пытаюсь сделать свой bind, у меня получилось сделать так, чтобы результат был таким же(вроде как), но сама функция, которая возвращается, выглядит не так, как у метода .bind. Как мне добиться такого, как у метода .bind?
Я хочу, чтобы первый и второй вывод в консоли совпадали, и чтобы при клике в консоли на мой вывод функции, меня перекидывало на функцию f1 в редакторе браузера, как это у оригинального .bind
const Misha = {
color: 'red',
size: 'big'
};
function f1(a, b, c) {
console.log('f1 ' + this.color + ' ' + this.size + a + b + ' ' + c);
}
Function.prototype.bindMy = function(context, ...args1) {
const then = this;
return function(...args2) {
then.call(context, ...args1, ...args2);
}
};
const bindMy = f1.bindMy(Misha, 1);
const bindJS = f1.bind(Misha, 1);
console.log(bindMy);
console.log(bindJS);
bindMy(2);
bindJS(2);
