﻿// Form http://aktuell.de.selfhtml.org/artikel/javascript/organisation/#alternativen-kontext

function $A (iterable) 
{
	var result = [];
	for (var i = 0; i < iterable.length; i++) 
	{
		result.push(iterable[i]);
	}
	return result;
}

Function.prototype.bind = function () 
{
	var method = this, args = $A(arguments), object = args.shift();
	return function () 
	{
		return method.apply(object, args);
	};
};

Function.prototype.bindAsEventListener = function(object) 
{
	var method = this;
	return function(event) 
	{
		return method.call(object, event || window.event);
	}
}
