Middle+
Implémentez la méthode Function.prototype.bind — une fonction qui prend un contexte et retourne une nouvelle fonction avec le contexte lié.
sobes.tech IA
Réponse de l'IA
Функция bind создаёт новую функцию, у которой жёстко привязан контекст this и, опционально, начальные аргументы. Вот пример реализации:
if (!Function.prototype.bind) {
Function.prototype.bind = function(context, ...bindArgs) {
const fn = this;
return function(...callArgs) {
return fn.apply(context, bindArgs.concat(callArgs));
};
};
}
Здесь bind возвращает новую функцию, которая при вызове вызывает исходную функцию с заданным контекстом и аргументами.
Пример использования:
const obj = {name: 'Alice'};
function greet(greeting) {
return greeting + ', ' + this.name;
}
const boundGreet = greet.bind(obj);
console.log(boundGreet('Hello')); // Hello, Alice