When tracing out variables in the console, How to create a new line?

JavascriptJqueryConsoleTrace

Javascript Problem Overview


So I'm trying to do something simple, I want to break up my traces in the console into several lines, using 1 console.log statement:

console.log('roleName = '+roleName+' role_ID = '+role_ID+' modal_ID = '+modal_ID+\n+'related = '+related);

How would you write the above to trace out the following?

roleName = test
role_ID = test
modal_UD = test
related = test

instead of roleName = test role_ID = test modal_UD = test related = test

I've checked out several other questions which appear similar, but none have helped or are talking about a different thing.

Thanks for taking a look!

Javascript Solutions


Solution 1 - Javascript

You should include it inside quotes '\n', See below,

console.log('roleName = '+roleName+ '\n' + 
             'role_ID = '+role_ID+  '\n' + 
             'modal_ID = '+modal_ID+ '\n' +  
             'related = '+related);

Solution 2 - Javascript

In ES6/ES2015 you can use string literal syntax called template literals. Template strings use backtick character instead of single quote ' or double quote marks ". They also preserve new line and tab

const roleName = 'test1';
const role_ID = 'test2';
const modal_ID = 'test3';
const related = 'test4';
        
console.log(`
  roleName = ${roleName}
  role_ID = ${role_ID}
  modal_ID = ${modal_ID}
  related = ${related}
`);

Solution 3 - Javascript

Easy, \n needs to be in the string.

Solution 4 - Javascript

Why not just use separate console.log() for each var, and separate with a comma rather than converting them all to strings? That would give you separate lines, AND give you the true value of each variable rather than the string representation of each (assuming they may not all be strings).

console.log('roleName',roleName);
console.log('role_ID',role_ID);
console.log('modal_ID',modal_ID);
console.log('related',related);

And I think it would be easier to read/maintain.

Solution 5 - Javascript

You need to add the new line character \n:

console.log('line one \nline two')

would display:

line one

line two

Solution 6 - Javascript

The worst thing of using just

console.log({'some stuff': 2} + '\n' + 'something')

is that all stuff are converted to the string and if you need object to show you may see next:

[object Object]

Thus my variant is the next code:

console.log({'some stuff': 2},'\n' + 'something');

Solution 7 - Javascript

console.log('Hello, \n' + 
            'Text under your Header\n' + 
            '-------------------------\n' + 
            'More Text\n' +
            'Moree Text\n' +
            'Moooooer Text\n' );

This works great for me for text only, and easy on the eye.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionLeon GabanView Question on Stackoverflow
Solution 1 - JavascriptSelvakumar ArumugamView Answer on Stackoverflow
Solution 2 - JavascriptVlad BezdenView Answer on Stackoverflow
Solution 3 - JavascriptAndrei NemesView Answer on Stackoverflow
Solution 4 - JavascriptKevin BView Answer on Stackoverflow
Solution 5 - JavascriptJustin BicknellView Answer on Stackoverflow
Solution 6 - JavascriptViktor SorokaView Answer on Stackoverflow
Solution 7 - JavascriptmisterzikView Answer on Stackoverflow