/    /  Javascript-TypeConversions

Javascript-TypeConversions

 

In javascript provides numerous ways to convert data from one type to another type. There are two most common data conversions :

  • Converting Values to String
  • Converting Values to Numbers

 

Implicit Conversion:

 

There are different operator and functions in JavaScript which automatically converts a value to the right type like alert() function in JavaScript accepts any value and convert it into a string. But different operator creates a problem like ‘+’ operator.

 

Example:

 

<script>

document.write('("3" - "1") = ' + ("3" - "1") + "<br>");
document.write('("3" - 1) = ' + ("3" - 1) + "<br>");
document.write('("3" * "2") = ' + ("3" * "2") + "<br>");
document.write('("3" % "2") = ' + ("3" % "2") + "<br>");
document.write('("3" + null) = ' + ("3" + null) + "<br>");

</script>

 

OUTPUT:

 

(“3” – “1”) = 2

(“3” – 1) = 2

(“3” * “2”) = 6

(“3” % “2”) = 1

(“3” + null) = 3null

 

Converting Values to Strings:

 

you can use the String() or toString() method to convert a value to a string.

 

Syntax :

 

String(value)

 

Example:

 

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>JavaScript Convert a Boolean Value to String</title>
</head>
<body>
  <script>
  var bool = true;
  document.write(typeof bool); // Prints: boolean
  document.write("<br>");

  var str = String(bool); // Becomes a string "true"
  document.write(typeof str); // Prints: string
  </script>
</body>
</html>

 

OUTPUT:

 

boolean

string

 

Example:

 

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>JavaScript Convert Values to Strings</title>
</head>
<body>
  <script>
  document.write(String(10.5) + "<br>");  // Prints: "10.5"
  document.write(String(123) + "<br>");  // Prints: "123"
  document.write(String(100 + 23) + "<br>");  // Prints: "123"
  document.write(String(true) + "<br>");  // Prints: "true"
  document.write(String(false) + "<br>");  // Prints: "false"
  document.write(String(123e-1) + "<br>");  // Prints: "12.3"
  document.write(String(0xFF) + "<br>"); // Prints: "255"
  document.write(String(undefined) + "<br>");  // Prints: "undefined"
  document.write(String(null));  // Prints: "null"
  </script>
</body>
</html>

 

OUTPUT:

 

10.5

123

123

true

false

12.3

255

undefined

null

 

Converting Values to Numbers:

 

The Number() function is used to convert a value to a Number. It can convert any numerical text and a boolean value to a Number. In the case of strings of non-numbers, it will convert it to a NaN(Not a Number).

 

Example:

 

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>JavaScript Convert Values to Numbers</title>
</head>
<body>
  <script>
  document.write(Number("10.5") + "<br>");  // Prints: 10.5
  document.write(Number(true) + "<br>");  // Prints: 1
  document.write(Number(false) + "<br>");  // Prints: 0
  document.write(Number(null) + "<br>");  // Prints: 0
  document.write(Number(" 123 ") + "<br>");  // Prints: 123
  document.write(Number(" ") + "<br>");  // Prints: 0
  document.write(Number("") + "<br>");  // Prints: 0
  document.write(Number("123e-1") + "<br>");  // Prints: 12.3
  document.write(Number("0xFF") + "<br>"); // Prints: 255 (hexadecimal representation)
  document.write(Number("undefined") + "<br>");  // Prints: NaN
  document.write(Number("null") + "<br>");  // Prints: NaN
  document.write(Number("Hello World!"));  // Prints: NaN
  </script>
</body>
</html>

 

OUTPUT:

 

10.5

1

0

0

123

0

0

12.3

255

NaN

NaN

NaN

 

Type Conversions Using Operators:

 

As + and – operators, can also be used to perform type conversions.

 

Example:

 

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>JavaScript Perform Data Type Conversions Using Operators</title>
</head>
<body>
  <script>
  var x = "10"; // x is a string
  var y = +x;
  document.write(typeof(y) + "<br>"); // Prints: number
  document.write(y + "<br>"); // Prints: 10

  var x = 10; // x is a number
  var y = x + "";
  document.write(typeof(y) + "<br>"); // Prints: string
  document.write(y + "<br>"); // Prints: 10

  var x = "15"; // x is a string
  var y = x - 0;
  document.write(typeof(y) + "<br>"); // Prints: number
  document.write(y + "<br>"); // Prints: 15

  var x = "123";
  document.write(typeof(!!x) + "<br>"); // Prints: boolean
  document.write(!!x + "<br>"); // Prints: true

  var x = "Hello World!";
  var y = +x;
  document.write(typeof(y) + "<br>");// Prints: number
  document.write(y + "<br>"); // Prints: NaN
  </script>
</body>
</html>

 

OUTPUT:

 

number

10

string

10

number

15

boolean

true

number

NaN