There is also a comprehensive mathematical library for JS called math.js [1]. It has no dependencies, supports powerful symbolic computation, as well as many mathematical functions. It implements a useful subset of what one expects a CAS to be able to do.