16
var str = '0.25';

How to convert the above to 0.25?

user198729
  • 58,910
  • 106
  • 245
  • 345
  • `parseInt` is blazing fast, but if you need decimals, you should go with `parseFloat`: https://jsbench.me/pokty2hchw/1 – Xairoo Sep 24 '21 at 08:03

4 Answers4

38

There are several ways to achieve it:

Using the unary plus operator:

var n = +str;

The Number constructor:

var n = Number(str);

The parseFloat function:

var n = parseFloat(str);
Christian C. Salvadó
  • 769,263
  • 179
  • 909
  • 832
6

For your case, just use:

var str = '0.25';
var num = +str;

There are some ways to convert string to number in javascript.

The best way:

var num = +str;

It's simple enough and work with both int and float
num will be NaN if the str cannot be parsed to a valid number

You also can:

var num = Number(str); //without new. work with both int and float

or

var num = parseInt(str,10); //for integer number
var num = parseFloat(str); //for float number

DO NOT:

var num = new Number(str); //num will be an object. (typeof num == 'object') will be true.

Use parseInt only for special case, for example

var str = "ff";
var num = parseInt(str,16); //255

var str = "0xff";
var num = parseInt(str); //255
cuixiping
  • 21,500
  • 6
  • 76
  • 93
2
var num = Number(str);
Amarghosh
  • 57,064
  • 11
  • 89
  • 120
0

var f = parseFloat(str);

Justin Johnson
  • 30,312
  • 7
  • 62
  • 87
lincolnk
  • 10,998
  • 4
  • 37
  • 57