In this comprehensive guide, we’ll dive deep into JavaScript numbers, covering everything from basic data types to advanced mathematical operations, and provide real-world examples to help you master this crucial aspect of JavaScript programming.

**JavaScript Numeric Data Types**

JavaScript provides two main types for representing numbers:

**Integers**: Whole numbers, both positive and negative, without a fractional or decimal component. Example:`42`

,`-17`

,`0`

.**Floats**: Numbers with fractional or decimal parts. Example:`3.14`

,`-0.01`

,`2.5`

.

JavaScript uses the `number`

data type to encompass both integers and floats.

**Basic Arithmetic Operations**

JavaScript supports a wide range of basic arithmetic operations on numbers:

**Addition (+)**:`5 + 3`

equals`8`

.**Subtraction (-)**:`10 - 4`

equals`6`

.**Multiplication (*)**:`2 * 6`

equals`12`

.**Division (/)**:`15 / 3`

equals`5`

.**Modulus (%)**:`17 % 4`

equals`1`

(remainder).**Exponentiation (**)**:`2 ** 3`

equals`8`

.

**NaN (Not-a-Number)**

JavaScript uses `NaN`

to represent the result of an undefined or unrepresentable mathematical operation. For example, dividing zero by zero (`0 / 0`

) results in `NaN`

.

**Infinity and -Infinity**

JavaScript represents positive infinity as `Infinity`

and negative infinity as `-Infinity`

. These values can result from mathematical operations, such as dividing a nonzero number by zero (`5 / 0`

results in `Infinity`

).

**Real-World Examples**

Let’s explore some real-world examples to illustrate the use of JavaScript numbers:

**Example 1: Calculating Total Sales**

```
const productPrice = 25.99;
const quantitySold = 50;
const totalSales = productPrice * quantitySold;
console.log(`Total sales: $${totalSales.toFixed(2)}`);
// Output: Total sales: $1299.50
```

Here, we calculate the total sales by multiplying the product price by the quantity sold, using the `toFixed()`

method to format the result with two decimal places.

**Example 2: Checking for Even Numbers**

```
function isEven(number) {
return number % 2 === 0;
}
console.log(isEven(4)); // Output: true
console.log(isEven(7)); // Output: false
```

We define a function `isEven()`

that checks if a given number is even by using the modulus operator (%).

**Example 3: Handling NaN**

```
const userInput = 'abc';
const parsedNumber = parseFloat(userInput);
if (isNaN(parsedNumber)) {
console.log('Invalid input: Not a number');
} else {
console.log(`Parsed number: ${parsedNumber}`);
}
```

In this example, we attempt to parse a user input as a number and handle cases where the input is not a valid number.

JavaScript numbers are a fundamental part of the language, used in countless applications and scenarios. Understanding the basics of numeric data types, arithmetic operations, and handling special values like NaN and Infinity is crucial for effective JavaScript programming. By mastering JavaScript numbers, you’ll have the tools to work with numeric data efficiently and accurately in your web development projects.