Skip to content

Instantly share code, notes, and snippets.

@kjellski
Forked from fdn/console.log grouped
Created May 30, 2014 09:15
Show Gist options
  • Star 8 You must be signed in to star a gist
  • Fork 3 You must be signed in to fork a gist
  • Save kjellski/6fec619e80ca94ed2e2a to your computer and use it in GitHub Desktop.
Save kjellski/6fec619e80ca94ed2e2a to your computer and use it in GitHub Desktop.
/**
* Console.log with call location and grouping to reduce log noise.
* Apply directly to code once.
*
* Original: http://remysharp.com/2014/05/23/where-is-that-console-log/
*/
var groupable = typeof console.groupCollapsed !== 'undefined';
['log', 'warn'].forEach(function(method) {
var old = console[method];
console[method] = function() {
var stack = (new Error()).stack.split(/\n/);
// Chrome includes a single "Error" line, FF doesn't.
if (stack[0].indexOf('Error') === 0) {
stack = stack.slice(1);
}
var args = [].slice.apply(arguments).concat([stack[1].trim()]);
if (groupable) {
console.groupCollapsed.apply(console, arguments);
var ret = old.call(console, stack[1].trim());
console.groupEnd();
return ret;
} else {
return old.apply(console, args);
}
};
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment