The internal workings are not that different, as @James Allardic already answered. There is a difference though. Using parseFloat, a (trimmed) string starting with one or more numeric characters followed by alphanumeric characters can convert to a Number, with Number that will not succeed. As in:

parseFloat('3.23abc'); //=> 3.23
Number('3.23abc'); //=> NaN

In both conversions, the input string is trimmed, by the way:

parseFloat('  3.23abc '); //=> 3.23
Number('   3.23 '); //=> 3.23
Answer from KooiInc on Stack Overflow
🌐
Reality Ripple
udn.realityripple.com › docs › Web › JavaScript › Reference › Global_Objects › parseFloat
parseFloat() - JavaScript
The parseFloat() function parses an argument (converting it to a string first if needed) and returns a floating point number.
Discussions

When does parseFloat decide to round?
Welcome to the wonderful world of floating point numbers. More on reddit.com
🌐 r/javascript
13
1
October 21, 2014
Converting a string to a float in Javascript?
+"3.4" => 3.4 More on reddit.com
🌐 r/javascript
15
0
March 27, 2015
🌐
W3Schools
w3schools.com › jsref › jsref_parsefloat.asp
W3Schools.com
The parseFloat() method parses a value as a string and returns the first number.
🌐
Learnjavascript
learnjavascript.co.uk › reference › globals › parsefloat.html
JavaScript parseFloat() Function
The JavaScript parseFloat() global function parses a string argument (converting it to a string first if required) and attempts to return a floating point number.
🌐
Codecademy
codecademy.com › docs › javascript › number methods › .parsefloat()
JavaScript | Number Methods | .parseFloat() | Codecademy
May 31, 2024 - In JavaScript, the .parseFloat() method parses a given string and returns the first floating-point number found in the string. Parsing stops when it encounters a character that is not part of a valid number.
Find elsewhere
🌐
Code.mu
code.mu › en › javascript › manual › lang › parseFloat
The parseFloat function - converts a string to a floating point number in JavaScript
The parseFloat function converts a string to a floating point number. This is necessary for values like '12.5px' - when the first there is a number, and then units of measurement. If you apply the parseFloat function to '12.5px', the result will be the number 12.5 (and it will really be a number, ...
Top answer
1 of 5
67

The internal workings are not that different, as @James Allardic already answered. There is a difference though. Using parseFloat, a (trimmed) string starting with one or more numeric characters followed by alphanumeric characters can convert to a Number, with Number that will not succeed. As in:

parseFloat('3.23abc'); //=> 3.23
Number('3.23abc'); //=> NaN

In both conversions, the input string is trimmed, by the way:

parseFloat('  3.23abc '); //=> 3.23
Number('   3.23 '); //=> 3.23
2 of 5
33

No. Both will result in the internal ToNumber(string) function being called.

From ES5 section 15.7.1 (The Number Constructor Called as a Function):

When Number is called as a function rather than as a constructor, it performs a type conversion...

Returns a Number value (not a Number object) computed by ToNumber(value) if value was supplied, else returns +0.

From ES5 section 15.1.2.3 (parseFloat (string)):

... If neither trimmedString nor any prefix of trimmedString satisfies the syntax of a StrDecimalLiteral (see 9.3.1) ...

And 9.3.1 is the section titled "ToNumber Applied to the String Type", which is what the first quote is referring to when it says ToNumber(value).


Update (see comments)

By calling the Number constructor with the new operator, you will get an instance of the Number object, rather than a numeric literal. For example:

typeof new Number(10); //object
typeof Number(10); //number

This is defined in section 15.7.2 (The Number Constructor):

When Number is called as part of a new expression it is a constructor: it initialises the newly created object.

🌐
Oracle
docs.oracle.com › cd › B40099_02 › books › eScript › eScript_JSReference199.html
Bookshelf v8.0: parseFloat() Method
Siebel eScript Language Reference > Siebel eScript Commands > Conversion Methods > · This method converts an alphanumeric string to a floating-point decimal number
🌐
Educative
educative.io › answers › what-is-parsefloat-in-javascript
What is parseFloat() in JavaScript?
The parseFloat() function takes a string as input, converts it to float, and returns the result.
🌐
GeeksforGeeks
geeksforgeeks.org › javascript › how-to-parse-float-with-two-decimal-places-in-javascript
How to Parse Float with Two Decimal Places in JavaScript? - GeeksforGeeks
The parseFloat() method converts a string to a floating-point number. If the string isn't numeric, it returns NaN.
Published   July 23, 2025
🌐
Server2client
server2client.com › javascriptref › parsefloat.html
JavaScript Reference - Global function - parseFloat()
The JavaScript global function parseFloat(), parses a string argument and attempts to return a floating point number.
🌐
MDN Web Docs
developer.mozilla.org › en-US › docs › Web › JavaScript › Reference › Global_Objects › Number › parseFloat
Number.parseFloat() - JavaScript | MDN
The Number.parseFloat() static method parses an argument and returns a floating point number. If a number cannot be parsed from the argument, it returns NaN.
🌐
Flexiple
flexiple.com › javascript › parsefloat-javascript
parseFloat JavaScript: Syntax and Examples - Flexiple
March 14, 2022 - Learn how to use the JavaScript parseFloat function to convert strings to floating-point numbers accurately. Examples and tips included.
🌐
Jsremote
jsremote.jobs › tutorials › parsefloat
What is the parseFloat() method in JavaScript? | Web developer jobs
December 30, 2022 - All in all, the parseFloat() function in JavaScript is a great way to parse through a string and extract the floating point number from a specified function. Don’t forget that its use is a bit more nuanced when you have a few numbers in a row.
🌐
Reintech
reintech.io › blog › understanding-the-parsefloat-method
Understanding the parseFloat() Method | Reintech media
February 22, 2023 - The parseFloat() method is a built-in JavaScript function that parses a string argument and returns a floating-point number.