Skip to main content

Data Type Converstion

1. Implicit Type Conversion (Type Coercion)​

JavaScript automatically converts data types in some operations.

ExpressionConverted ToResult
"5" + 3String"53" (String concatenation)
"5" - 3Number2 (Subtraction forces number conversion)
true + 2Number3 (true → 1)
false + 2Number2 (false → 0)
5 + nullNumber5 (null → 0)
"5" * "2"Number10 (Multiplication forces number conversion)
"5" == 5Booleantrue (loose equality converts "5" to number)

2. Explicit Type Conversion (Manual Conversion)​

You can manually convert values using JavaScript methods.

String Conversion​

MethodExampleResult
String()String(123)"123"
toString()(123).toString()"123"

Number Conversion​

MethodExampleResult
Number()Number("123")123
parseInt()parseInt("123px")123 (Extracts number from string)
parseFloat()parseFloat("12.34px")12.34

Boolean Conversion​

MethodExampleResult
Boolean()Boolean(1)true
!!value!!0false

Truthy and Falsy Values in Boolean Conversion​

  • Falsy Values (convert to false): 0, "" (empty string), null, undefined, NaN, false
  • Truthy Values (convert to true): All other values, including "0", "false", [], {}, function(){}

3. Special Cases in Type Conversion​

ExpressionConverted ToResult
Number(undefined)NaNNaN
Number(null)00
Number(true)11
Number(false)00
Number(" 123 ")123123 (Trims spaces)
Number("abc")NaNNaN
Boolean("false")true"false" is a non-empty string
Boolean([])trueAn empty array is truthy
Boolean({})trueAn empty object is truthy

4. JSON Conversion​

To convert objects or arrays to JSON strings:

const obj = { name: "Rahul", age: 25 };
console.log(JSON.stringify(obj)); // '{"name":"Rahul","age":25}'

To convert a JSON string back to an object:

const jsonString = '{"name":"Rahul","age":25}';
console.log(JSON.parse(jsonString)); // { name: "Rahul", age: 25 }