Languages
[Edit]
EN

JavaScript - global isFinite() vs Number.isFinite()

8 points
Created by:
Blessing-D
574

In this short article, we would like to show comparision between global isFinite() vs Number.isFinite() methods in JavaScript.

Quick solution:

Global isFinite() method first converts value to number, that causes returning true for:

  • null,
  • boolean values,
  • empty strings
  • number strings,
  • etc.

Number.isFinite() method doesn't.

Simple summary: 

valueGlobal isFinite(value)Number.isFinite(value)
1000truetrue
3.14truetrue
NaNfalsefalse
Infinityfalsefalse
nulltruefalse
undefinedfalsefalse
truetruefalse
falsetruefalse
''truefalse
'1000'truefalse
'3.14'truefalse

Hint: check practical examples for more cases.

 

Practical examples

In this section you can find runnable examples that shows isFinite() methods results.

Global isFinite() method

// ONLINE-RUNNER:browser;

console.log(isFinite(1000));       // true
console.log(isFinite(3.14));       // true

console.log(isFinite(true));       // true
console.log(isFinite(false));      // true

console.log(isFinite(NaN));        // false
console.log(isFinite(Infinity));   // false
console.log(isFinite(null));       // true
console.log(isFinite(undefined));  // false

console.log(isFinite('1000'));     // true
console.log(isFinite('3.14'));     // true


// Crazy case:

console.log(isFinite([]));         // true
console.log(isFinite([1000]));     // true
console.log(isFinite(['ab']));     // false

Number.isFinite() method

// ONLINE-RUNNER:browser;

console.log(Number.isFinite(1000));       // true
console.log(Number.isFinite(3.14));       // true

console.log(Number.isFinite(true));       // false
console.log(Number.isFinite(false));      // false

console.log(Number.isFinite(NaN));        // false
console.log(Number.isFinite(Infinity));   // false
console.log(Number.isFinite(null));       // false
console.log(Number.isFinite(undefined));  // false

console.log(Number.isFinite('1000'));     // false
console.log(Number.isFinite('3.14'));     // false


// Crazy case:

console.log(Number.isFinite([]));         // false
console.log(Number.isFinite([1000]));     // false
console.log(Number.isFinite(['ab']));     // false

 

Donate to Dirask
Our content is created by volunteers - like Wikipedia. If you think, the things we do are good, donate us. Thanks!
Join to our subscribers to be up to date with content, news and offers.
Native Advertising
🚀
Get your tech brand or product in front of software developers.
For more information Contact us
Dirask - we help you to
solve coding problems.
Ask question.

❤️💻 🙂

Join