codice:
function isFunction(f) {
	return	(typeof(f) == "function" || 
		f.constructor == Function || 
		eval("f instanceof(Function)")) &&
		f.constructor !== RegExp
};



P.S. la prima seri di OR è perchè Safari ed altri considerano il typeof come "object" ... non è detto quindi che una funzione ritorni typeof function pure essendo una funzione