SuicideSheep
SuicideSheep

Reputation: 5550

Proper way to convert number to string in javascript

According to tutorial by w3schools (http://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_tostring_number), we can use toString() method on a integer var. Kindly look at the following code:

var num = 15;
var n = num.toString();
alert(isNaN(n));

If toString() method is working, why isNaN(n) returning false?

Upvotes: 0

Views: 920

Answers (3)

Oka
Oka

Reputation: 26345

isNaN() coerces the string '15' into a number value before checking it.

isNaN even coerces booleans, and some falsy values into numbers.

isNaN(true) // >> false
isNaN(false) // >> false
isNaN([]) // >> false
isNaN('') // >> false

Try using typeof to figure out if it's a number or not

var num = 15;
var n = num.toString();
alert(typeof n === 'number');

Upvotes: 1

Mukesh Kalgude
Mukesh Kalgude

Reputation: 4844

isNaN() function returns true if the value is NaN, and false if not. Your code is excute alert(isNaN(15));

So it is return false

Upvotes: -1

Alen Genzić
Alen Genzić

Reputation: 1418

The IsNaN method tries converting the string passed to it back to a number, and since "15" is still actually a number, the method returns false.

See: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/isNaN

Upvotes: 3

Related Questions