alias or wrap console.log examples

several aliases and wrapper functions for console.log and document.querySelector etc.

by Laurens Maneschijn

HTML

various alias/wrapper functions on console.log() etc.

see console output.


<!-- TODO: add reference links -->

JavaScript

console.clear();

var $ = document.querySelector.bind(document);
var $$ = document.querySelectorAll.bind(document);
console.log($('*'));
console.log($$('*'));

//var log = console.log; // this might not always work everywhere.
//log(1,2,3);

var log = console.log.bind(console);
log(1,2,3);

function log2() {
	console.log.apply(console, arguments);
}
log2(1,2,3);

function log3() {
	var args = [].slice.call(arguments);
	args.unshift('log3() : '); // Always prepend this to know where this log came from
	console.log.apply(console, args);
}
log3(1,2,3);
log3(1,2,3);

// A more complicated example, combining console log grouping and timing:
// https://developer.mozilla.org/en-US/docs/Web/API/Console/time
// https://developer.mozilla.org/en-US/docs/Web/API/Console/group
function timed_run(callback, args, that) {
	if (typeof callback !== 'function') {
		return;
	}
	var callback_description = (''+callback).replace(/\s+/g, ' ').substr(0, 60) + '... [' + (''+args) + ']';

	console.groupCollapsed('timed_run: ' + callback_description);


	console.groupCollapsed('callback');
	console.log(callback);
	console.groupEnd();

	console.groupCollapsed('args');
	console.log(args);
	console.groupEnd();

	console.groupCollapsed('logs during callback execution');
	console.time('timed_run');
	try {
		callback.apply(that || this, args || []);
	} catch (e) {
	}
	console.groupEnd();

	console.timeEnd('timed_run');
	console.groupEnd();
}

timed_run(
	function(min, max){
		for(var i=min; i <= max; i++){
			console.log(i);
		}
	},
	[2,20]
);

timed_run(
	(min, max) => {
		for(var i=min; i <= max; i++){
			console.log(i);
		}
	},
	[2,20]
);