You are currently looking at the v9.0.0 docs (Reason v3.6 syntax edition). You can find the latest API docs here.
Int
Provide utilities for handling int
.
toExponential
RESlet toExponential: int => string
Formats an int
using exponential (scientific) notation.
Returns a string
representing the given value in exponential notation.
Raises RangeError
if digits is not in the range [0, 20] (inclusive).
RES/* prints "7.7e+1" */
Js.log(Js.Int.toExponential(77))
toExponentialWithPrecision
RESlet toExponentialWithPrecision: (int, ~digits: int) => string
Formats an int
using exponential (scientific) notation.
digits
specifies how many digits should appear after the decimal point. The value must be in the range [0, 20] (inclusive).
Returns a string
representing the given value in exponential notation.
The output will be rounded or padded with zeroes if necessary.
Raises RangeError
if digits
is not in the range [0, 20] (inclusive).
RES/* prints "7.70e+1" */
Js.log(Js.Int.toExponentialWithPrecision(77, ~digits=2))
/* prints "5.68e+3" */
Js.log(Js.Int.toExponentialWithPrecision(5678, ~digits=2))
toPrecision
RESlet toPrecision: int => string
Formats an int
using some fairly arbitrary rules.
Returns a string
representing the given value in fixed-point (usually).
toPrecision
differs from toFixed
in that the former will format the number with full precision, while the latter will not output any digits after the decimal point.
Raises RangeError
if digits
is not in the range accepted by this function.
RES/* prints "123456789" */
Js.log(Js.Int.toPrecision(123456789))
toPrecisionWithPrecision
RESlet toPrecisionWithPrecision: (int, ~digits: int) => string
Formats an int
using some fairly arbitrary rules.
digits
specifies how many digits should appear in total. The value must between 0 and some arbitrary number that's hopefully at least larger than 20 (for Node it's 21. Why? Who knows).
Returns a string
representing the given value in fixed-point or scientific notation.
The output will be rounded or padded with zeroes if necessary.
toPrecisionWithPrecision
differs from toFixedWithPrecision
in that the former will count all digits against the precision, while the latter will count only the digits after the decimal point.
toPrecisionWithPrecision
will also use scientific notation if the specified precision is less than the number of digits before the decimal point.
Raises RangeError
if digits
is not in the range accepted by this function.
RES/* prints "1.2e+8" */
Js.log(Js.Int.toPrecisionWithPrecision(123456789, ~digits=2))
/* prints "0.0" */
Js.log(Js.Int.toPrecisionWithPrecision(0, ~digits=2))
toString
RESlet toString: int => string
Formats an int
as a string
.
Returns a string
representing the given value in fixed-point (usually).
RES/* prints "123456789" */
Js.log(Js.Int.toString(123456789))
toStringWithRadix
RESlet toStringWithRadix: (int, ~radix: int) => string
Formats an int
as a string
.
radix
specifies the radix base to use for the formatted number. The value must be in the range [2, 36] (inclusive).
Returns a string
representing the given value in fixed-point (usually).
Raises RangeError
if radix
is not in the range [2, 36] (inclusive).
RES/* prints "110" */
Js.log(Js.Int.toStringWithRadix(6, ~radix=2))
/* prints "deadbeef" */
Js.log(Js.Int.toStringWithRadix(3735928559, ~radix=16))
/* prints "2n9c" */
Js.log(Js.Int.toStringWithRadix(123456, ~radix=36))
toFloat
RESlet toFloat: int => float
equal
RESlet equal: (int, int) => bool
max
RESlet max: int
min
RESlet min: int