The Number module of the DataType Utility allows you to take a data value and convert it to a number.

{{>datatype-numberparse-source}}

To convert a data value to a number, simply call the `parse()` function of the Y.Number class:

``` YUI().use("datatype-number", function(Y) { var output = Y.Number.parse("123123.123"); // output is the number 123123.123 }); ```

Under the hood, the data value is converted to a number via `+data`, not `parseInt()`. When the resulting value is `NaN`, then null is returned:

``` YUI().use("datatype-number", function(Y) { var output = Y.Number.parse("$100"); // output is null output = Y.Number.parse("20 dollars"); // output is null output = Y.Number.parse("3,000,000.12"); // output is null (it's the commas) output = Y.Number.parse(new Date("Jan 1, 2000")); // output is 946713600000 }); ```

A configuration argument can be added to deal with these numbers.

``` YUI().use("datatype-number", function(Y) { var output = Y.Number.parse("$100", { prefix:'$' }); // output is 100 output = Y.Number.parse("20 dollars", { suffix: 'dollars' }); // output is 20 output = Y.Number.parse("3,000,000.12" ,{ thousandsSeparator: ',' }); // output is 3000000.12 output = Y.Number.parse(new Date("Jan 1, 2000")); // output is 946713600000 }); ```

The following example uses the following configuration:

``` { decimalSeparator: ',', thousandsSeparator: '.', prefix: '€', suffix: '(EUR)' } ```
{{>datatype-numberparseconfig-source}}