2.0.1 • Published 3 months ago
numeric-quantity v2.0.1
Converts a string to a number, like an enhanced version of parseFloat
.
Features:
- In addition to plain integers and decimals,
numeric-quantity
can parse numbers with comma or underscore separators ('1,000'
or'1_000'
), mixed numbers ('1 2/3'
), vulgar fractions ('1⅖'
), and the fraction slash character ('1 2⁄3'
). - To allow and ignore trailing invalid characters à la
parseFloat
, pass{ allowTrailingInvalid: true }
as the second argument. - To parse Roman numerals like
'MCCXIV'
or'Ⅻ'
, pass{ romanNumerals: true }
as the second argument or callparseRomanNumerals
directly. - Results will be rounded to three decimal places by default. To avoid rounding, pass
{ round: false }
as the second argument. To round to a different number of decimal places, assign that number to theround
option ({ round: 5 }
will round to five decimal places). - Returns
NaN
if the provided string does not resemble a number.
For the inverse operation—converting a number to an imperial measurement—check out format-quantity.
For a more complete solution to parsing recipe ingredients, try parse-ingredient.
Usage
Installed
import { numericQuantity } from 'numeric-quantity';
console.log(numericQuantity('1 1/2')); // 1.5
console.log(numericQuantity('2 2/3')); // 2.667
CDN
As an ES module:
<script type="module">
import { numericQuantity } from 'https://cdn.jsdelivr.net/npm/numeric-quantity/+esm';
console.log(numericQuantity('10½')); // 10.5
</script>
As UMD (all exports are properties of the global object NumericQuantity
):
<script src="https://unpkg.com/numeric-quantity"></script>
<script>
console.log(NumericQuantity.numericQuantity('xii', { romanNumerals: true })); // 12
</script>
2.0.1
3 months ago
2.0.0-beta.2
11 months ago
2.0.0-beta.1
11 months ago
2.0.0-beta.0
11 months ago
2.0.0
11 months ago
2.0.0-beta.3
11 months ago
1.0.4
2 years ago
1.0.3
2 years ago
1.0.2
3 years ago
1.0.1
3 years ago
1.0.0
3 years ago
0.5.2
3 years ago
0.5.1
5 years ago
0.5.0
5 years ago
0.4.2
5 years ago
0.4.1
5 years ago
0.4.0
5 years ago
0.3.3
5 years ago
0.3.2
6 years ago
0.3.1
9 years ago
0.3.0
9 years ago
0.2.0
9 years ago
0.1.2
9 years ago
0.1.1
9 years ago
0.1.0
9 years ago