In JavaScript, numbers represent numeric values, including integers and floating-point numbers.JavaScript uses the IEEE-754 floating-point format for all numbers.

1. Creating Numbers

Integer Numbers

let a = 10;
let b = -25;

Floating-Point Numbers

let price = 99.99;
let pi = 3.1416;

2. JavaScript Uses One Number Type

JavaScript does not have separate int or float types.

let x = 10;     // integer
let y = 10.5;  // floating point

Both are of type number.

typeof x; // "number"
typeof y; // "number"

3. Special Numeric Values

Infinity and -Infinity

let result = 10 / 0;
console.log(result); // Infinity

NaN (Not a Number)

let value = "abc" / 2;
console.log(value); // NaN

Check NaN properly:

Number.isNaN(value); // true

4. Arithmetic Operations

let a = 10;
let b = 3;

console.log(a + b); // 13
console.log(a - b); // 7
console.log(a * b); // 30
console.log(a / b); // 3.333...
console.log(a % b); // 1

5. Floating-Point Precision Issue

JavaScript numbers can have precision problems.

0.1 + 0.2 === 0.3; // false

Correct way:

+(0.1 + 0.2).toFixed(2); // 0.3

6. Number Methods

toString()

let num = 100;
num.toString(); // "100"

toFixed()

let price = 19.567;
price.toFixed(2); // "19.57"

toPrecision()

let num = 123.456;
num.toPrecision(4); // "123.5"

7. Converting Strings to Numbers

Number()

Number("123"); // 123
Number("abc"); // NaN

parseInt()

parseInt("100");      // 100
parseInt("100px");    // 100

parseFloat()

parseFloat("99.99");  // 99.99

8. Checking Numbers

isNaN() vs Number.isNaN()

isNaN("abc");           // true (not recommended)
Number.isNaN("abc");    // false

Number.isInteger()

Number.isInteger(10);    // true
Number.isInteger(10.5);  // false

9. Math Object

Common Math Methods

Math.round(4.6);  // 5
Math.floor(4.9);  // 4
Math.ceil(4.1);   // 5
Math.random();    // random number (0–1)

Random number between 1 and 10:

Math.floor(Math.random() * 10) + 1;

10. BigInt (Large Numbers)

JavaScript Number is unsafe beyond:

Number.MAX_SAFE_INTEGER; // 9007199254740991

Use BigInt for larger values:

let big = 12345678901234567890n;

⚠ Cannot mix BigInt and Number directly.

11. Comparison with Numbers

10 == "10";   // true
10 === "10";  // false (recommended)

Always use strict equality (===).

12. Real-World Example

const price = 499.99;
const quantity = 3;

const total = price * quantity;

console.log(`Total Price: ${total.toFixed(2)}`);

Categorized in:

Javascript,