DEV Community

Cover image for The JavaScript Banana 🍌
JS Bits Bill
JS Bits Bill

Posted on • Edited on

3

The JavaScript Banana 🍌

You gotta make programming fun once in a while. Why not have a banana!

('b'+'a'+ +'🍌'+'a').toUpperCase();
// BANANA
Enter fullscreen mode Exit fullscreen mode

WTF! 🙉
Depending on the context, + in JavaScript will function as the unary operator to convert an operand into a number. The first plus sign is used to concatenate the "b" and "a" strings while the third is used to convert 🍌 to a Number type - and this returns NaN. Add a trailing "a", use another + to concatenate "ba" + NaN + "a", set it to all caps, and we get BANANA!

 

Bonus Shenanigans

See what this returns in the Chrome console!

const p1 = (+'🦇'+'a'+ +'👨'+'a').repeat(2);

const str = window.BatteryManager.toString();
const p2 = str.slice(9, 19).replace('tery', '');

console.log(`${p1} ${p2.toUpperCase()}!`);
Enter fullscreen mode Exit fullscreen mode

Check out more #JSBits at my blog, jsbits-yo.com. Or follow me on Twitter!

AWS Q Developer image

Your AI Code Assistant

Automate your code reviews. Catch bugs before your coworkers. Fix security issues in your code. Built to handle large projects, Amazon Q Developer works alongside you from idea to production code.

Get started free in your IDE

Top comments (0)

Postmark Image

Speedy emails, satisfied customers

Are delayed transactional emails costing you user satisfaction? Postmark delivers your emails almost instantly, keeping your customers happy and connected.

Sign up

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay