I am passing function to other function. It returns Uncaught TypeError: Illegal invocation
when passing native console.log
function to it. Why's that?
var functionToUse = console.log,
parameterToUse = 'Hello World!';
function execute(logic, parameter) {
if (parameter) {
logic(parameter);
} else if (!parameter) {
logic();
}
}
execute(function () { alert(1) }, false); // works fine
execute(functionToUse, parameterToUse); // Uncaught TypeError: Illegal invocation