Yes, completely equivalent.
It happens that access through is a .prototypelittle faster, because a new instance of the object should not be created. However, this is what we call microoptimization.
A good way to completely get rid of a deep chain is to call Function.prototype.bind.
Example
(function( slice ) {
slice( whatever, 1 );
}( Function.prototype.call.bind( Array.prototype.slice )));
jAndy source
share