Coderslang

Search IconIcon to open search

Add a String to a Number and a Boolean in JavaScript [Tech Interview Quiz]

Last updated Jan 10, 2023

JavaScript is a loosely typed language. This gives you both great power and great responsibility.

Consider the following code snippet and determine the result.

Code snippet as a picture

1
2
const x = '2' + 3 - true + '1';
console.log(x);

Will we see any output? If yes, then what would it be?

Explanation

To answer this question correctly, you need to understand the typecast rules in JS.

The arithmetic operations + and - have the same priority, so the value of x will be calculated from left to right without any exceptions.

First, we concatenate the string '2' with the number 3. The result is the string '23'.

Second, we try to subtract the boolean value true from the string '23'. To make this operation possible, both boolean and a string have to be cast to a number. Non-surprisingly '23' becomes 23 and true is turned to 1. Eventually, we do the subtraction and get the result, number 22.

The last step is to add the string '1' to the number 22. Applying the same concatenation that we did on the first step gives us the result - a string '221'.

Answer

There are no issues with the expression in line 1. The value of x is a string ’221’, which will be successfully logged to the screen.

🔥 START LEARNING 🔥