WAT

That's all there is to say about those things... See this brilliant talk:

destroyallsoftware.com/talks/wat

 

Try with this too:

  • [1] - 0
  • [1] + 1
  • [1] - 1
  • [1, 2] - 0
  • 1 + {}
  • [1] + {}
 
  1. I Suspected but got wrong.
  2. I got it right
  3. Never expected that to happen
  4. Obviously i expected
 

Wrong on the first one, definitly not expected that.

 
 

My answers, 50%:

  1. [{}] // Wrong
  2. [0] // Wrong
  3. 1 // Right
  4. 0 // Right
 
 

The + operator can either concatenate two elements or perform an addition.

In the first case, it will convert both elements to strings, the array being an empty string and the second one being [Object object].

Second does pretty much the same thing, [] = '', 0 = '0', '' + '0' = '0'
And the others are similar.

Classic DEV Post from Jul 13 '18

What are good ways to learn software architecture and systems design?

I get anxious when working on back-end code. Data loss, security breaches and s...

JavaScript developer, Writer & Serverless