markdown guide

When I started writing JS it was hard to get an understanding of what prototype is and how it's used.


Type coercion is definitely not obvious in JavaScript

[] == ![] // true 😱

IMHO, don't ever ever ever use == in JavaScript. Always use === instead and forget about type coercion; just explicitly type-cast anything you need to.


It's a very rare case when you work on a project alone. Other developers can use == and it's necessary to understand how type coercion works.

I agree that most of developers consider == as evil. But Kyle Simpson (You don't know JS author) don't hate type coercion. Moreover, he recomments to use == where necessary.

In other words, coercion, especially implicit coercion, has usages where it actually improves the readability of our code.



Closures. It's a complicated subject involving an understanding of how the execution context works and how variables are scoped and held within the JavaScript engine. It takes a lot of practice and theory for closures to finally click. It took me like six months to finally grok it.


Javascript has a lot of layers. Understanding what is controlling each piece can be hard to parse if you're new. I actually wrote something on this a while back.


Newest confusion is parseInt. Just try and see what happens if you do parseInt(0.000000347)


The ecosystem. Every time I come back to JS the tooling is entirely different. Makes it frustrating to get things done.


I have a few things that I considered confusing when I started learning JS..scope, hoisting, closures, callbacks

Classic DEV Post from Jun 25

What does your Junior interview process involve?

Explain what your junior interview process involves and what you look for in junior candidates.

Tomasz Łakomy profile image
Senior Frontend Engineer at OLX Group. Tech speaker, instructor, jQuery evangelist.