Open In App

How to compare isNaN() and isInteger() Methods in JavaScript ?

Last Updated : 21 Feb, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

JavaScript provides various in-built functions that developers can use to check the type of values of variables. Two such functions are isNaN() and isInteger(). In this article, we will discuss the difference between these two functions and when to use them.

isNaN() Method: The JavaScript isNaN() method is used to check whether a given value is an illegal number or not. It returns true if the value is a NaN else returns false. It is different from the Number.isNaN() Method.

Syntax:

isNaN(value)

Where value is to be checked. The method returns true if the value passed to it is NaN, and false otherwise. 

Example: This example checks for some numbers if they are numbers or not using the Javascript isNaN() method.

Javascript




console.log(isNaN(NaN));    
console.log(isNaN(123));     
console.log(isNaN("Hello"));


Output:

true 
false
true

isInteger() Method: The isInteger() method is used to determine if a value is an integer. An integer is a whole number (positive, negative, or zero) that does not have any fractional part. 

Syntax:

Number.isInteger(value)

Where value is the value to be checked. The method returns true if the value passed to it is an integer and false otherwise. 

Example: This example checks for some numbers if they are integers or not using the Javascript isInteger() method.

Javascript




console.log(Number.isInteger(10));
console.log(Number.isInteger(10.5));
console.log(Number.isInteger("10"));


Output: 

true
false
false

Difference between isNaN() and isInteger():

Feature  isNaN()  isInteger()
Purpose  To check if a value is NaN. To check if a value is an integer.
Syntax  isNaN(value)  Number.isInteger(value)
Returns  true if the value is NaN, false otherwise.  true if the value is an integer, false otherwise.
Handles non-numeric values  Returns true for any non-numeric value, including strings, arrays, and objects.   Only returns true for integer values.

Summary: The main difference between isNaN() and isInteger() functions is that isNaN() checks if a value is NaN, while isInteger() checks if a value is an integer. When to use them depends on what type of value you want to check for, whether it is NaN or an integer. These functions are useful for ensuring that the values you are working with are of the expected type, leading to more robust and reliable programs. Always use the appropriate function based on your specific requirements.


Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads