Learn 7 easy ways to convert a string to number in JavaScript. Learn how to convert a string to a number in JavaScript using 7 easy methods. This article will teach you how to use each method effectively and efficiently, even if you are a beginner.
parseInt()
parses a string and returns a whole number. Spaces are allowed. Only the first number is returned.
This method has a limitation though. If you parse the decimal number, it will be rounded off to the nearest integer value and that value is converted to string. One might need to use parseFloat()
method for literal conversion.
myString = '129'
console.log(parseInt(myString)) // expected result: 129
a = 12.22
console.log(parseInt(a)) // expected result: 12
Number()
can be used to convert JavaScript variables to numbers. We can use it to convert the string too number.
If the value cannot be converted to a number, NaN
is returned.
Number("10"); // returns 10
Number(" 10 "); // returns 10
Number("10.33"); // returns 10.33
The unary plus operator (+
) precedes its operand and evaluates to its operand but attempts to convert it into a number, if it isn't already.
const x = 25;
const y = -25;
console.log(+x); // expected output: 25
console.log(+y); // expected output: -25
console.log(+''); // expected output: 0
parseFloat()
parses a string and returns a number. Spaces are allowed. Only the first number is returned.
parseFloat("10"); // returns 10
parseFloat("10.33"); // returns 10.33
parseFloat("10 20 30"); // returns 10
parseFloat("10 years"); // returns 10
parseFloat("years 10"); // returns NaN
The Math.floor()
function returns the largest integer less than or equal to a given number. This can be little tricky with decimal numbers since it will return the value of the nearest integer as Number.
str = '1222'
console.log(Math.floor(str)) // returns 1222
a = 12.22
Math.floor(a) // expected result: 12
Multiplying the string value with the 1
which won’t change the value and also it will be converted to number by default.
str = '2344'
console.log(str * 1) // expected result: 2344
We can use the double tilde operator to convert the string to number.
str = '1234'
console.log(~~str) // expected result: 1234
negStr = '-234'
console.log(~~negStr) // expected result: -234
Thank You
#javascript