в консольке и почему? )
const bind = (func, bindThis) => {
const bindFunc = function(...args) {
const newFunc = eval(func.toString());
return typeof newFunc == 'function' ? newFunc(args) : "";
};
return bindFunc.bind(bindThis);
}
const foo = {
bar: 'baz'
};
const boz = () => this.bar;
const baf = function baa() { return this.bar; };
const bozBinded = bind(boz, foo);
const bafBinded = bind(baf, foo);
console.log(bozBinded() + bafBinded());
eval is evil!
соглы )
Такое на собеседованиях дают?
Не, сейчас сам придумал, ну как сам, давненько видел, как пишется бинд для стрелочной функции, вот решил вспомнить. )
Обсуждают сегодня