joon hee - StandardLibrary-1.81
NAME
Function - deal with pieces of reusable code.
SYNOPSIS
var x = function(a,b) { this.a = a; this.b = b; }; x.apply(null, ["a", "b"]);
DESCRIPTION
A function is a piece of reusable code that takes a group of arguments, performs statements, and then returns some value.
METHODS
Inherited
From Object.prototype: hasOwnProperty, isPrototypeOf, propertyIsEnumerable, unwatch, watch
Constructor()
*** Not Implementable In Standard JavaScript
This creates a new function object.
toString() Returns String
*** Not Implementable In Standard JavaScript
This returns a string representation of the function.
apply(Object thisArg, Array argsArray) Returns Any
call(Object thisArg, *@argsArray) Returns Any
toSource() Returns String
Returns a source representation of the function.
AUTHOR
Jhuni, <jhuni_x@yahoo.com>
COPYRIGHT
Public Domain
/*=pod =head1 NAME Function - deal with pieces of reusable code. =head1 SYNOPSIS var x = function(a,b) { this.a = a; this.b = b; }; x.apply(null, ["a", "b"]); =head1 DESCRIPTION A function is a piece of reusable code that takes a group of arguments, performs statements, and then returns some value. =head1 METHODS =head2 Inherited From Object.prototype: hasOwnProperty, isPrototypeOf, propertyIsEnumerable, unwatch, watch =cut*/ /*=pod =head2 Constructor() *** Not Implementable In Standard JavaScript This creates a new function object. =cut*/ /*=pod =head2 toString() Returns String *** Not Implementable In Standard JavaScript This returns a string representation of the function. =cut*/ /*=pod =head2 apply(Object thisArg, Array argsArray) Returns Any =cut*/ Function.prototype.apply = function(o, p) { if( p != null && !(p instanceof Array) && typeof p.callee != "function" ) { throw new Error("second argument to Function.prototype.apply must be an array"); } o = (o == undefined || o == null) ? window : Object(o); if( p == null ) { p = [] } // Establish parameters: var parameters = []; for ( var i = 0, l = p.length; i < l; i++ ) { parameters[i] = 'p[' + i + ']'; } // Estbalish a temporaryName that is undefined var temporaryName = '__apply__'; while( o[temporaryName] != undefined ) { temporaryName += "_"; } o[temporaryName] = this; var rval = eval('o.' + temporaryName + '(' + parameters.join(', ') + ')' ); delete o[temporaryName]; return rval; }; /*=pod =head2 call(Object thisArg, *@argsArray) Returns Any =cut*/ Function.prototype.call = function() { var thisArg = typeof arguments[0] != 'undefined' ? arguments[0] : {}; var argsArray = []; for( var i = 1, l = arguments.length; i < l; i++ ) { argsArray[argsArray.length] = arguments[i]; } return this.apply( thisArg, argsArray ); }; /*=pod =head2 toSource() Returns String Returns a source representation of the function. =cut*/ Function.prototype.toSource = function() { return( '(' + this.toString() + ')' ); }; /*=pod =head1 AUTHOR Jhuni, <jhuni_x@yahoo.com> =head1 COPYRIGHT Public Domain =cut*/