# Class Reference #

This page lists all the various class types in Math.js. Every top-level function is listed here and links to its detailed reference to other parts of the documentation.

## math #

The “math” namespace contains the entire math.js functionality. All of the mathematical functions are available in the “math” namespace, and allow for inputs of various types.

## Unit #

Stores values for a scalar unit and its postfix. (eg `100 mm`

or `100 kg`

). Although the `Unit`

class contains public functions documented as follows, using the following API directly is *not* recommended. Prefer using the functions in the “math” namespace wherever possible.

## Fraction #

Stores values for a fractional number.

## BigNumber #

Stores values for a arbitrary-precision floating point number.

## Matrix #

Two types of matrix classes are available in math.js, for storage of dense and sparse matrices. Although they contain public functions documented as follows, using the following API directly is *not* recommended. Prefer using the functions in the “math” namespace wherever possible.

Classes used internally that may be of use to developers:

## Complex #

Stores values for a complex number.

## Parser #

The Parser object returned by `math.parser()`

.

## Node #

A node in an expression-tree, which can be used to analyze, manipulate, and evaluate expressions.

`Node`

is the base class of all other node classes: