Sometimes you need to have the biggest number to do some comparations in your code for some conditionals that can not be solved just using a specific number, so in this case, we have a solution for that and it is so simple Infinity
reserved word on JavaScript. But first of all, what it means Infinity
on JavaScript?
A number reaches Infinity when it exceeds the upper limit for a number: 1.797693134862315E+308
And it is the same case for negative numbers: -1.797693134862316E+308
And you could say, what is the purpose of using an Infinity
number? Well, the question is so big and maybe I will not be able to answer to that but I will try to show you a little example where we could see the purpose of using an Infinity
number.
We have the next example where we need to get the second-highest number with the array variable and maybe the first approach that we have maybe could be the next.
let input = [3, 1, 4, 2, 5];
function secondHighest(array) {
let highest = Math.max(...array);
let secondHighest = 0;
for (let i = 0; i < array.length; i++) {
if (array[i] > secondHighest && array[i] < highest) {
secondHighest = array[i];
}
}
return secondHighest;
}
The previous code will be working correctly and we will get the output: 4
as we expected. That is fine but, what happens when we have negative numbers?
let input = [-3, -1, -4, -2, -5];
Maybe we could set on the conditional the lowest number than the rest of the negative numbers on the array but that's not the best solution because we could have a problem identifying that specific number and maybe we will not get the correct output. For example, if we execute the next code as it is the output will be 0
because any other number is biggest than 0, that is, or first conditional with the variable secondHighest
.
How we could resolve that problem in this case? Using a negative Infinity
number.
function secondHighest(array) {
let highest = Math.max(...array);
let secondHighest = -Infinity;
for (let i = 0; i < array.length; i++) {
if (array[i] > secondHighest && array[i] < highest) {
secondHighest = array[i];
}
}
return secondHighest;
}
Here you will get the correct output without using any other negative number, so here you see a good example of using Infinity
numbers in your next functions, components or code in general so try it and you will see how helpful is to use this amazing JavaScript tool.
Top comments (2)
That's a good solution to this scenario but the porpouse of that example is show how helpful is the Infinity number in Javascript. Thank you for the comment and the solution.