--- layout: default ---

Function compare #

Compare two values. Returns 1 when x > y, -1 when x < y, and 0 when x == y. x and y are considered equal when the relative difference between x and y is smaller than the configured absTol and relTol. The function cannot be used to compare values smaller than approximately 2.22e-16. For matrices, the function is evaluated element wise. Strings are compared by their numerical value.

Syntax #

```js math.compare(x, y) ```

Parameters #

Parameter | Type | Description --------- | ---- | ----------- `x` | number | BigNumber | bigint | Fraction | Unit | string | Array | Matrix | First value to compare `y` | number | BigNumber | bigint | Fraction | Unit | string | Array | Matrix | Second value to compare

Returns #

Type | Description ---- | ----------- number | BigNumber | bigint | Fraction | Array | Matrix | Returns the result of the comparison: 1 when x > y, -1 when x < y, and 0 when x == y.

Throws #

Type | Description ---- | -----------

Examples #

```js math.compare(6, 1) // returns 1 math.compare(2, 3) // returns -1 math.compare(7, 7) // returns 0 math.compare('10', '2') // returns 1 math.compare('1000', '1e3') // returns 0 const a = math.unit('5 cm') const b = math.unit('40 mm') math.compare(a, b) // returns 1 math.compare(2, [1, 2, 3]) // returns [1, 0, -1] ```

See also #

[equal](equal.html), [unequal](unequal.html), [smaller](smaller.html), [smallerEq](smallerEq.html), [larger](larger.html), [largerEq](largerEq.html), [compareNatural](compareNatural.html), [compareText](compareText.html)