Skip to content

Instantly share code, notes, and snippets.

@tauren
Created June 24, 2011 23:56
Show Gist options
  • Star 5 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save tauren/1045906 to your computer and use it in GitHub Desktop.
Save tauren/1045906 to your computer and use it in GitHub Desktop.
Make it safe to use console.log always. How to convert to coffeescript?
// usage: log('inside coolFunc', this, arguments);
// paulirish.com/2009/log-a-lightweight-wrapper-for-consolelog/
window.log = function(){
log.history = log.history || []; // store logs to an array for reference
log.history.push(arguments);
if(this.console) {
arguments.callee = arguments.callee.caller;
console.log( Array.prototype.slice.call(arguments) );
}
};
// make it safe to use console.log always
(function(b){function c(){}for(var d="assert,count,debug,dir,dirxml,error,exception,group,groupCollapsed,groupEnd,info,log,markTimeline,profile,profileEnd,time,timeEnd,trace,warn".split(","),a;a=d.pop();)b[a]=b[a]||c})(window.console=window.console||{});
window.log = ->
log.history = log.history or []
log.history.push arguments
if @console
arguments.callee = arguments.callee.caller
console.log Array::slice.call(arguments)
((b) ->
c = ->
d = "assert,count,debug,dir,dirxml,error,exception,group,groupCollapsed,groupEnd,info,log,markTimeline,profile,profileEnd,time,timeEnd,trace,warn".split(",")
while a = d.pop()
b[a] = b[a] or c
) window.console = window.console or {}
@tauren
Copy link
Author

tauren commented Jun 25, 2011

Found the solution using http://ricostacruz.com/js2coffee/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment