15.3.4.5.1 [[Call]] for bind

2010-07-04

This special [[Call]] method only applies to functions returned by Function.prototype.bind. It basically combines the bound parameters and this value with the additional parameters passed on in the actual call.

So this will be the [[Call]] method of the function object returned from a call to bind.

Code: (Meta Ecma)
function GetSpecialBindCallMethod(thisValue, extraArgs){
var boundArgs = this.[[BoundArgs]];
var boundThis = this.[[BoundThis]];
var target = this.[[TargetFunction]];
var args = boundArgs.concat(extraArgs);
return target.[[Call]](boundThis, args);
}