Core JavaScript

Type Conversions

JavaScript has a few built-in data types: boolean, string, and number. Additionally, there are two special values: undefined and null. Automatic conversions exist for each of the built-in types, which might not be obvious. We can see how values convert by passing the values into the constructors, as we show below.

TypeConversions.html

<!DOCTYPE html>
<html>
<head>
    <title>XoaX.net's Javascript</title>
</head>
<body>
    <script type="text/javascript" src="TypeConversions.js"></script>
</body>
</html>

TypeConversions.js

// Special Values
document.writeln("Special Values:<br />");
document.writeln("-------------------------------------------<br />");
document.writeln("undefined as a number: " + Number(undefined) + "<br />");
document.writeln("undefined as a string: " + String(undefined) + "<br />");
document.writeln("undefined as a boolean: " + Boolean(undefined) + "<br />");

document.writeln("null as a number: " + Number(null) + "<br />");
document.writeln("null as a string: " + String(null) + "<br />");
document.writeln("null as a boolean: " + Boolean(null) + "<br />");

// Booleans
document.writeln("<br />Booleans:<br />");
document.writeln("-------------------------------------------<br />");
document.writeln("true as a number: " + Number(true) + "<br />");
document.writeln("true as a string: " + String(true) + "<br />");
document.writeln("true as a boolean: " + Boolean(true) + "<br />");

document.writeln("false as a number: " + Number(false) + "<br />");
document.writeln("false as a string: " + String(false) + "<br />");
document.writeln("false as a boolean: " + Boolean(false) + "<br />");

// Strings
document.writeln("<br />Strings:<br />");
document.writeln("-------------------------------------------<br />");
document.writeln("\"\" as a number: " + Number("") + "<br />");
document.writeln("\"\" as a string: " + String("") + "<br />");
document.writeln("\"\" as a boolean: " + Boolean("") + "<br />");

document.writeln("\"3.14\" as a number: " + Number("3.14") + "<br />");
document.writeln("\"3.14\" as a string: " + String("3.14") + "<br />");
document.writeln("\"3.14\" as a boolean: " + Boolean("3.14") + "<br />");

document.writeln("\"XoaX.net\" as a number: " + Number("XoaX.net") + "<br />");
document.writeln("\"XoaX.net\" as a string: " + String("XoaX.net") + "<br />");
document.writeln("\"XoaX.net\" as a boolean: " + Boolean("XoaX.net") + "<br />");

// Numbers
document.writeln("<br />Numbers:<br />");
document.writeln("-------------------------------------------<br />");

document.writeln("0 as a number: " + Number(0) + "<br />");
document.writeln("0 as a string: " + String(0) + "<br />");
document.writeln("0 as a boolean: " + Boolean(0) + "<br />");

document.writeln("1 as a number: " + Number(1) + "<br />");
document.writeln("1 as a string: " + String(1) + "<br />");
document.writeln("1 as a boolean: " + Boolean(1) + "<br />");

document.writeln("Infinity as a number: " + Number(Infinity) + "<br />");
document.writeln("Infinity as a string: " + String(Infinity) + "<br />");
document.writeln("Infinity as a boolean: " + Boolean(Infinity) + "<br />");

document.writeln("NaN as a number: " + Number(NaN) + "<br />");
document.writeln("NaN as a string: " + String(NaN) + "<br />");
document.writeln("NaN as a boolean: " + Boolean(NaN) + "<br />");
 

Output

 
 

© 2007–2024 XoaX.net LLC. All rights reserved.