How -Infinity is converted to Number in JavaScript?

In JavaScript, -Infinity is a special numeric value representing negative infinity. When converted using the Number() method, it remains -Infinity since it's already a valid number type.

Understanding -Infinity

-Infinity is a built-in JavaScript constant that represents the mathematical concept of negative infinity. It's already of type "number", so converting it with Number() simply returns the same value.

<!DOCTYPE html>
<html>
<head>
    <title>-Infinity Conversion</title>
</head>
<body>
    <p>Converting -Infinity to Number</p>
    <script>
        var myVal = -Infinity;
        console.log("Original value:", myVal);
        console.log("Type of -Infinity:", typeof myVal);
        console.log("Number(-Infinity):", Number(myVal));
        console.log("Are they equal?", myVal === Number(myVal));
    </script>
</body>
</html>
Original value: -Infinity
Type of -Infinity: number
Number(-Infinity): -Infinity
Are they equal? true

How -Infinity is Created

Here are common ways -Infinity can occur in JavaScript:

<!DOCTYPE html>
<html>
<head>
    <title>Creating -Infinity</title>
</head>
<body>
    <p>Ways to create -Infinity</p>
    <script>
        console.log("Direct assignment:", -Infinity);
        console.log("Division by zero:", -1 / 0);
        console.log("Math overflow:", -Number.MAX_VALUE * 2);
        console.log("Number conversion:", Number("-Infinity"));
    </script>
</body>
</html>
Direct assignment: -Infinity
Division by zero: -Infinity
Math overflow: -Infinity
Number conversion: -Infinity

Checking for -Infinity

You can detect -Infinity using several methods:

<!DOCTYPE html>
<html>
<head>
    <title>Checking -Infinity</title>
</head>
<body>
    <p>Methods to check for -Infinity</p>
    <script>
        var val = -Infinity;
        
        console.log("val === -Infinity:", val === -Infinity);
        console.log("Number.isFinite(val):", Number.isFinite(val));
        console.log("isFinite(val):", isFinite(val));
        console.log("val < Number.MIN_SAFE_INTEGER:", val < Number.MIN_SAFE_INTEGER);
    </script>
</body>
</html>
val === -Infinity: true
Number.isFinite(val): false
isFinite(val): false
val < Number.MIN_SAFE_INTEGER: true

Comparison with Other Values

Value Number() Result Type
-Infinity -Infinity number
Infinity Infinity number
"-Infinity" -Infinity number
NaN NaN number

Conclusion

Converting -Infinity with Number() returns -Infinity unchanged, as it's already a valid number type. Use methods like Number.isFinite() to detect infinite values in your code.

Updated on: 2026-03-15T23:18:59+05:30

296 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements