How to convert string into float in JavaScript?


We can convert a string into a float using the parseFloat() function or the Number() constructor in JavaScript. Other approaches such as using + operator, eval() and parseInt() methods, can also be used for this. Converting strings to floating point numbers is a typical operation in JavaScript. This is required when working with numbers represented as strings, for as when reading data from an input field or a CSV file. In this article, we will learn these methods in detail.

Conversion Methods

There are several ways to convert a string into a float in JavaScript. The most common methods are the parseFloat() function and the Number() constructor.

The parseFloat() function

The parseFloat function is a tool in JavaScript that helps turn a string into a number with decimals. You give it a word or sentence, and it gives back a number. It's easy to use and is built into JavaScript.

Syntax

The syntax of the parseFloat() function is as follows −

parseFloat(string)

Example

Here is an example of how to use the parseFloat() function −

<!DOCTYPE html>
<html>
<body>
   <p id="demo"></p>
   <script>
      let string = "3.14";
      let float = parseFloat(string);
      document.getElementById("demo").innerHTML = float;
      
      //output:3.14
   </script>
</body>
</html>

Although the parseFloat() function is handy for converting a string to a float, it has several restrictions. Only the first part of the string that is a valid float is converted by the function. If there are any non-numeric characters after the float in the string, the function will ignore them.

The Number() Constructor

JavaScript includes a built-in function called Number() that offers an alternate way to turn a number represented as a string into a floating-point number. It returns the equivalent floating-point representation for a string that is sent in as an input. The Number() function offers a more flexible way for turning strings into floating-point numbers than the parseFloat() function does, and it can handle type conversions for a wider variety of data types, including integers and other numeric kinds.

Syntax

The syntax of the Number() constructor is as follows −

new Number(string)

Example

Here is an example of how to use the Number() constructor −

<!DOCTYPE html>
<html>
<body>
   <p id="demo"></p>
   <script>
      let string = "3.114";
      let float = new Number(string);
      document.getElementById("demo").innerHTML = float; //output:3.114
   </script>
</body>
</html>

Although the Number() function is useful for converting a string to a float, it has several restrictions. The function is less performant than the parseFloat() function and should not be used.

Other Methods

There are also other methods for converting a string into a float in JavaScript. These methods include using the + operator, the parseInt() function and the eval() function.

The + operator

The + operator is a simple tool that helps you change a word into a number using float as input. Just give it a word that represents a number, and it will turn it into a type of number called a float. This tool is useful, but it only works with words that are actually numbers. It cannot change words that don't represent numbers.

Syntax

The syntax of the + operator is as follows −

+string

Example

Here is an example of how to use the + operator −

<!DOCTYPE html>
<html>
<body>
   <p id="demo"></p>
   <script>
      let string = "3.4";
      let float = +string;
      document.getElementById("demo").innerHTML = float; //output:3.4
   </script>
</body>
</html>

The parseInt() Function

The parseInt() built-in JavaScript function converts a text to an integer or whole number. The parseInt() method accepts a string as input and outputs an integer value. To convert a string to a floating-point number, use the ParseInt() function and pass a radix (base) of 10 as an additional argument. Let's look at an example to help us understand.

Syntax

The syntax of the parseInt() function is as follows −

parseInt(string, radix)

Example

Here is an example of how to use the parseInt() function to convert a string into a float −

<!DOCTYPE html>
<html>
<body>
   <p id="demo"></p>
   <script>
      let string = "3.4";
      let float = parseInt(string, 10);
      document.getElementById("demo").innerHTML = float; //output:3
   </script>
</body>
</html>

The eval() Function

The eval() method is a JavaScript built-in function that evaluates a string as a JavaScript expression. It accepts a string as an argument and returns a result, just like the parseInt() function. Converting a text to a float is a common use case for eval(). You can accomplish this by passing a string representing a float as an argument to eval (). After that, the function will evaluate the expression and return the float value. Overall, eval() is a useful function for running dynamic code, but it should be used with caution to avoid security concerns.

Syntax

The syntax of the eval() function is as follows −

eval(string)

Example

Here is an example of how to use the eval() function to convert a string into a float −

<!DOCTYPE html>
<html>
<body>
   <p id="demo"></p>
   <script>
      let string = "3.456"; 
      let float = eval(string);
      document.getElementById("demo").innerHTML = float; //output:3.456
   </script>
</body>
</html>

Please take a note here that the eval() function is considered to be a dangerous function as it can execute any JavaScript code passed to it, which can be a cause of security risk if used improperly. Therefore, it is not recommended to use the eval() function to convert a string into a float.

Conclusion

In this blog, we have talked about various types of methods to convert string into number. The most common methods are the parseFloat() function and the Number() constructor. However, the + operator, the parseInt() function, and the eval() function can also be used to convert a string into a float. Each method has its own advantages and disadvantages, and the best method to use will depend on the specific scenario. Developers should be aware of the limitations of each method and use them accordingly.

Updated on: 21-Feb-2023

11K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements