# Function equal Test whether two values are equal. The function tests whether the relative difference between x and y is smaller than the configured epsilon. The function cannot be used to compare values smaller than approximately 2.22e-16. For matrices, the function tests whether the size and all elements of the matrices are equal (a deep comparison). In case of complex numbers, x.re must equal y.re, and x.im must equal y.im. ## Syntax ```js math.equal(x, y) ``` ### Parameters Parameter | Type | Description --------- | ---- | ----------- `x` | Number | BigNumber | Boolean | Complex | Unit | String | Array | Matrix | First value to compare `y` | Number | BigNumber | Boolean | Complex | Unit | String | Array | Matrix | Second value to compare ### Returns Type | Description ---- | ----------- Boolean | Array | Matrix | Returns true when the compared values are equal, else returns false ## Examples ```js var math = mathjs(); math.equal(2 + 2, 3); // returns false math.equal(2 + 2, 4); // returns true var a = math.unit('50 cm'); var b = math.unit('5 m'); math.equal(a, b); // returns true ``` ## See also [unequal](unequal.md), [smaller](smaller.md), [smallerEq](smallerEq.md), [larger](larger.md), [largerEq](largerEq.md), [compare](compare.md), [dotEqual](dotEqual.md)