Tuesday, June 4, 2024
 Popular · Latest · Hot · Upcoming
15
rated 0 times [  22] [ 7]  / answers: 1 / hits: 22869  / 10 Years ago, thu, june 5, 2014, 12:00:00

I'm trying to get the console.log as string in pure JavaScript.
My input is a script, which I'm not familiar with, and I want to collect all the messages in the console.log into a string.



For example:



function doSomething(){
console.log(start);
console.log(end);
var consoleLog = getConsoleLog();
return consoleLog;
}

function getConsoleLog(){
// How to implement this?
}

alert(doSomething());


JSFiddle link



Note that I do not need to alert the log - this is just a simple example of testing the functionality. I'll have to do some operations on the log's content.


More From » logging

 Answers
7

You could overwrite console.log method before using it:



var logBackup = console.log;
var logMessages = [];

console.log = function() {
logMessages.push.apply(logMessages, arguments);
logBackup.apply(console, arguments);
};


Using apply and arguments preserves the correct console.log behaviour, i.e. you can add multiple log messages with a single call.



It will push all new console.log messages to logMessages array.


[#70715] Tuesday, June 3, 2014, 10 Years  [reply] [flag answer]
Only authorized users can answer the question. Please sign in first, or register a free account.
anabellejaynav

Total Points: 176
Total Questions: 105
Total Answers: 105

Location: Croatia
Member since Fri, Sep 11, 2020
4 Years ago
;