kh logo
All Courses
  1. Tutorials
  2. Web Development

Type Conversions in Javascript

Updated on Sep 3, 2025
 
8,040 Views

Most of the time, operators and functions automatically convert a value to the correct type. That’s called “type conversion”.

For example, alert automatically converts any value to a string to show it. Mathematical operations convert values to numbers.

There are also cases when user need to explicitly convert a value to put things right.

String Conversion in Javascript

String conversion happens when we need the string form of a value.

For example, alert(value) does it to show the value. The conversion here is done automatically. We can also use a call String(value) function for that conversion manually.

let value = true;
alert(typeof value); // boolean
value = String(value); // now value is a string "true"
alert(typeof value); // string

String conversion is mostly obvious. A true becomes "true", 0 becomes "0".

Number Conversion

Numeric conversion happens in mathematical functions and expressions automatically.

For example, when division / is applied to non-numbers, which can be converted:

console.log("12"/"2"); //6 – Both strings are converted to Number

We can use a Number(value) function to explicitly convert a value to Number. Like below:

let str = "123";
let num = Number(str);
console.log(typeof str); //string
console.log(typeof num); //number

If the string to be converted is not a valid number, the result of such conversion is NaN, for example:

let str = "One two three";
let num = Number(str);
console.log(num); //NaN

Some other numeric conversion rules for explicit conversation are below

//undefined becomes null
let str;
let num = Number(str);
console.log(str); //undefined
console.log(num); //NaN
//null becomes 0
let str = null;
let num = Number(str);
console.log(str); //null
console.log(num); //0
//true/false becomes 1/0
let str1 = true;
let str2 = false;
let num1 = Number(str1);
let num2 = Number(str2);
console.log(str1); //true
console.log(num1); //1
console.log(str2); //false
console.log(num2); //0
//In strings whitespaces from the start and the end are removed. Then, if //the remaining string is empty, the result is 0. Otherwise, the number is //“read” from the string. An error gives NaN if the string cannot be //converted.

let str1 = "       ";
let str2 = "  123 ";
let str3 = "  123z ";
let num1 = Number(str1);
let num2 = Number(str2);
let num3 = Number(str3);
console.log(num1); //0
console.log(num2); //123
console.log(num3); //NaN

Problem with addition operator(+)All mathematical operations convert values to numbers but not the addition(+) operator. In JavaScript it is used for string concatenation also. So, if one of the added values is a string then the other one is also converted to a string. Then it concatenates them:

console.log(1 + "2"); //12
//1 gets converted to string and so "1" + "2" becomes "12"
console.log(4 + 5 + "3");  //93
//First 4 + 5 gives 9. Since "3" is string, so 9 is converted to "9" and //the result becomes "93"
console.log("3" + 5 + 4);  //354
//As with above cases "3" + 5 gives "35" and then "35" + 4 gives "354"

Boolean Conversion

Boolean conversion is very simple. It follows two basic rules.

  • Values that are “empty”, like 0, an empty string, null, undefined and NaN become false.
  • Other values become true.
console.log(Boolean(0)); //false
console.log(Boolean(1)); //true
console.log(Boolean("0")); //true – since non-empty string
console.log(Boolean("")); //false
console.log(Boolean(undefined)); //false
console.log(Boolean(null)); //false
console.log(Boolean(NaN)); //false
+91

By Signing up, you agree to ourTerms & Conditionsand ourPrivacy and Policy

Get your free handbook for CSM!!
Recommended Courses