DEV Community

Cover image for You won't be able to answer this simple JavaScript question!
Sadeedpv🥇
Sadeedpv🥇

Posted on • Edited on

You won't be able to answer this simple JavaScript question!

Last night, I was scrolling through twitter and I found a interesting JavaScript question, and I bet you won't be able to answer this without cheating.

Let's see how long would would it take for you to answer this one:

What does ("b" + "a" + + "a" + "a").toLowerCase() output in JavaScript?

The question does look simple, but the answer will definitely blow your mind.

Tell me how long it took you to answer in the comments.

And Yes, JavaScript is crazy!

Latest comments (30)

Collapse
 
codeystein profile image
codeyStein

It's the little things that makes javascirpt so annoying :)

Collapse
 
equiman profile image
Camilo Martinez

Now try console.log(new Array(4).join(Number('y tho') + 'a')+' Batman!') 🦇

Collapse
 
sadeedpv profile image
Sadeedpv🥇

NaNaNaNaNaNa batman! is that the desired output or am I missing something? 🤔

Collapse
 
equiman profile image
Camilo Martinez

Yes, maybe for people from my generation 😅.

Now I think this joke is too old 👴

Collapse
 
lexlohr profile image
Alex Lohr

NaN is actually part of IEEE 754, which is used in most languages to express floating point numbers.

Collapse
 
kweisvee profile image
Chrissy Vinco

Okay the person who thought of this problem is soooo clever

Collapse
 
intermundos profile image
intermundos

In your case it's bananaa

Collapse
 
sadeedpv profile image
Sadeedpv🥇

It's banana

Collapse
 
unfor19 profile image
Meir Gabay

I wanted to see if ChatGPT will get it right.. And it did :)

The NaN part is very interesting, as one of the "a" chars is dropped, initially, I didn't understand why it's not "bananaa" (extra "a"), now I get it 💪🏻

Image description

Collapse
 
khair_al_anam profile image
Khair Alanam

That's honestly cool.

baNaNa

Collapse
 
sadeedpv profile image
Sadeedpv🥇

and weird

Collapse
 
bosshie96 profile image
BOSSHIE • Edited
console.log(("b" + "a" + + "a" + "a").toLowerCase());
Enter fullscreen mode Exit fullscreen mode

banana

Collapse
 
sadeedpv profile image
Sadeedpv🥇

✅✅

Collapse
 
overflow profile image
overFlow

now i see why typeScript and them exist.
obviously it is string :"b"+string :"a"+NaN+string :"a".
Do not ask me about the last string :"a".
let us say it is your homework.

Collapse
 
jburky15 profile image
Joe Burkhart • Edited

It took me a second because I didn't notice the ++ (Unary plus) right away. Definitely got a little laugh out of me once I caught it though.