DEV Community

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

Posted on • Edited on

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!

Top comments (0)