The Number data type is used to represent numeric values, e.g. integer, floating-point, and exponential numbers, and is essential for mathematical calculations and storing values.
Integer Numbers
Integer numbers are whole numbers without any decimal points and can be positive, negative, or zero. The range of integer numbers in JavaScript is between -9007199254740991 and 9007199254740991.
let x = 10 // positive integer
let y = -20 // negative integer
let z = 0 // zero
Standard operations are straightforward:
let sum = 10 + 5 // 15
let multiply = 10 * 5 // 50
let divide = 10 / 5 // 2
let subtract = 10 - 5 // 5
Floating-Point (decimal) Numbers
The range of floating-point numbers in JavaScript is between -1.7976931348623157 x 10^308
and 1.7976931348623157 x 10^308
. Due to the way that floating-point numbers are represented in memory, they can sometimes lead to precision errors, which can be problematic in some calculations.
let x = 3.14 // positive floating-point number
let y = -0.5 // negative floating-point number
let z = 0.0 // floating-point zero
Operations work just as expected (or, do they?!):
let sum = 0.1 + 0.2 // 0.30000000000000004
In the above example, the value of sum
is not precisely 0.3
, but it is 0.30000000000000004
. When working with financial data or other types of applications that require high precision, the toFixed()
method can be used to round the value to a specified number of decimal places.
let pi = 3.14159;
console.log(pi.toFixed(2)); // 3.14
The Floating-Point data type is useful in scientific calculations and calculations that require high precision.
Exponential Numbers
Exponential numbers are written using the letter "e" and are used to represent very large or very small numbers - the letter "e" represents "10 raised to the power of" the number that follows:
let x = 5e3 // 5000 (5 times 10 raised to the power of 3)
let y = 5e-3 // 0.005 (5 times 10 raised to the power of -3)
Here are some exponential numbers used to represent very large or very small numbers (ideal for scientific calculations):
let distanceToSun = 149.6e6 // distance to the sun in kilometers
let hairWidth = 0.003e-3 // width of a human hair in meters
Type Checks and Conversion
JavaScript also provides some built-in methods for working with numbers, such as isNaN()
, which is used to check if a value is not a number, and parseInt()
, which parses a string and returns an integer.
let notANum = "hello";
console.log(isNaN(notANum)); // true
let stringNum = "10";
let num = parseInt(stringNum);
console.log(num); // 10
Take Away
Number is a versatile data type and allows for the representation of a wide range of numeric values. Whether you need to represent integers, floating-point numbers, or exponential numbers, JavaScript provides the necessary tools to work with them effectively. Understanding the different data types and their respective use cases is essential for writing efficient and effective code.
Top comments (0)