In this article i’d like to share my experience of using some console features for debugging purposes. Let’s start with the definition what is a console?

Console – is a browsers built-in debugger. Obviously you know about it using console.log a lot. But what if I tell you that behind the console there are more then you can realized. Just running **console.log(console)** will show you a lot of methods that can be using along with console.


Writes an error message if the assertion is false. If the assertion is true, nothing happens.

let userLogged = true
console.log('user logged:' + userLogged)
console.assert(userLogged, '1  user is not logged')
userLogged = false
console.log('user logged:' + userLogged)
console.assert(userLogged, '2 user is not logged')


To clear the console.


Displays tabular data as a table.

function employee (name, profession) { = name
  this.profession = profession
let james = new employee('James', 'Developer')


To group things together with a label.


The same as group, but creates the new block collapsed.


Logs the number of times that this particular call to count has been called.

console.count('test'); // "test: 1"
console.count('js'); //"js: 1"
console.count('test'); //"test: 2"


To reset a counter for a label.


Also you can keep track the amount of time between your console.logs by using **console.time()**

It will start the timer, and then calling **console.timelog()** will log the amount of time elapsed since last timer started. And **console.timeEnd()** to stop the timer.

Using string substitutions passing a string to one of the console object’s methods that accepts a string (**%s** outputs as string)

Pass **%c** to console to apply CSS style.

And don’t forget about **console.error()**, which will print an error to the console.