bind(), call(), and apply()

What concept does this code implementation demonstrate?
Function.prototype.myBind = function(context, ...args) {
  const originalFunction = this;
  return function(...innerArgs) {
    return originalFunction.apply(context, [...args, ...innerArgs]);
  };
};
Next Question (8/20)